基于TCP协议的树莓派灯光控制

必备原料:

1.树莓派开发板

2.运行windows server 2012的服务器

3.任何联网PC机

原料用途:

首先树莓派的用途不用多说,在此实验中就是为了用它的IO口来连接服务器获取指令信息,进而控制灯光的开启和关闭,在树莓派上运行的程序有:连接服务器的客户端源程序(C语言编写),在源程序中编写一个逻辑层——当收到PC机连接指令时,调用shell脚本进行灯光的关闭和开启动作,但是此系统中除了要用到这个脚本之外,还需要用一个脚本用来反复执行连接服务器的客户端,为什么要这样呢,因为连接服务器时的connect()方法如果执行失败就会退出整个程序的执行,但是为了要随时监听有无连接可用,所以要在脚本里面循环执行这个连接程序,保证能够在服务端打开时能够连接上服务器

服务器在这里担当转发工作,因为在服务器上的程序是服务端,首先这个服务端一边监听有无客户端PC机的连接请求,一有请求就再调用多线程函数再创建一个服务端线程,让新创建的服务端线程接受树莓派客户端的连接,当树莓派连接上服务器之后就开启灯光

任何联网PC机的作用就是发送指令的工作,由于时间有限,我没有写详细的控制逻辑,只是这个客户端执行起来,连接上服务器就让树莓派把电灯打开。


这就是大概的系统设计,只是一个控制雏形,肯定算不上最好,而且用的是传输层协议,就涉及到一个数据传输位宽的问题,我会再接下来的时间里了解http协议之后看能不能用http协议的方法来实现控制逻辑

你可能感兴趣的:(windows,tcp,server,2012)