这是个简易的潜水艇模型,由于艇身狭窄,在结构上没法容纳潜伏控制机械装置,因此整体处于漂浮状态。整体上特点如下 1、采用pcduino作为控制中枢,轻易实现网络控制和视频传输; 2、船体小巧,在此基础上稍加改,跟换大船体,就可以轻松实现潜伏功能; 3、通信方面采用网线传输,主要是水下通信技术的限制加上必须实现视频传输功能,目前得已采用的方法; 4、供电采用外界电源方式,核心板和电机驱动板电源隔离,解决驱动板对核心板的电源干扰问题; 5、扩展性强,驱动板可接3路双向控制设备和两路单向设备,双向设备主要是电机机构,目前预留一路,单向设备主要是照明设备。 一:整体结构 艇身整体如图所示:
这是个简易的潜水艇模型,由于艇身狭窄,在结构上没法容纳潜伏控制机械装置,因此整体处于漂浮状态。整体上特点如下 1、采用pcduino作为控制中枢,轻易实现网络控制和视频传输; 2、船体小巧,在此基础上稍加改,跟换大船体,就可以轻松实现潜伏功能; 3、通信方面采用网线传输,主要是水下通信技术的限制加上必须实现视频传输功能,目前得已采用的方法; 4、供电采用外界电源方式,核心板和电机驱动板电源隔离,解决驱动板对核心板的电源干扰问题; 5、扩展性强,驱动板可接3路双向控制设备和两路单向设备,双向设备主要是电机机构,目前预留一路,单向设备主要是照明设备。 一:整体结构 艇身整体如图所示:
推进器图:
推进器图,采用正反旋转方式,从而实现前进后退功能;
方向舵装置,采用正反旋转方式,从而实现左右转弯功能。 二电路结构 电路结构图如下所示:
PC机与pcDuino通过网线连接,pcDuino与Driver板子通过pcDuino的gpio口(此处io7,io8,io9,io10)连接. Driver电路图如何所示 三:网络监控工具安装 摄像头视频网络监控工具安装,步骤如下 1.在pcduino上点启动后打开命令窗口 2:输入sudo su 更改权限 3:sudo apt-get install libjpeg-dev subversion imagemagick 这个时候如果出现错误,则需要我们安装jpegsrc.v8c.tar.gz的东西 在http://www.ijg.org/files/jpegsrc.v8c.tar.gz下载。并放到pcduino上 4:tar xvfz jpeg-v8c.tar.gz 5:cd jpeg-v8c 6:./configure –enable-shared –prefix=$CONFIGURE_PREFIX 7:make 8:sudo make install 9:此时在键入步骤3,应该不会出错,不然就要到网上好好找找原因 10:进入Downloads目录,我本人操作是 cd /home/ubuntu/Downloads 11:svn co https://svn.code.sf.net/p/mjpg-streamer/code/mjpg-streamer mjpg-streamer 注意地址可能因为重映射有所变化,只需在浏览器上输入https://svn.code.sf.net/p/mjpg-streamer/code/就可以查看此时的网址,替换上述地址即可。 12:cd mjpg-streamer #有可能有从mjpg-streamer目录,可以接着进入,直到看到Makefile为止; 13:make clean all 14:export LD_LIBRARY_PATH=-i ”input_uvc.so” -o ”output_http.so -w ./www” 15:sudo make DESTDIR=/usr install 16:./mjpg_streamer -i ”input_uvc.so -d /dev/video0 -y -r 1600*1200″ -o ”output_http.so -w ./www” 此时窗口显示 0:HTTP TCP port。。。。。。:8080 0:commands :enabled 17:在浏览器中输入http://localhoustip:8080 弹出界面后点击stream标签,就可以看到摄像头拍摄到的视频。 四:程序的启动 1、将控制程序的contor.c文件拷贝到pcduino指定的目录中 2、编译,输入命令 gcc -o contor contor.c 编译成功后运行程序,输入命令 ./contor 此时控制程序已经运行。 五:链接控制 控制程序的软件的tcp采用的服务器方式,引出上位机软件需要创建一个client,指定端口号3490。 控制协议介绍:协议采用简单的字符串协议,如字符串“D:30 ”表示推进电机正转,字符串“D:-30 ”表示推进电机反转,字符串“D:0 ”表示推进电机停止。 字符串“A:30 ”表示方向电机正转,字符串“A:-30 ”表示方向电机反转,字符串“A:0 ”表示方向电机停止。 同时可以发送字符串“A:xx D:xx ”实现同时对双电机控制,xx大于20电机正转,小于-20表示电机反转,其它数表示电机停止。
|