原来如此 发表于 2013-12-24 16:30:31

pcDuino潜水艇启航

这是个简易的潜水艇模型,由于艇身狭窄,在结构上没法容纳潜伏控制机械装置,因此整体处于漂浮状态。整体上特点如下

1、采用pcduino作为控制中枢,轻易实现网络控制和视频传输;

2、船体小巧,在此基础上稍加改,跟换大船体,就可以轻松实现潜伏功能;

3、通信方面采用网线传输,主要是水下通信技术的限制加上必须实现视频传输功能,目前得已采用的方法;

4、供电采用外界电源方式,核心板和电机驱动板电源隔离,解决驱动板对核心板的电源干扰问题;

5、扩展性强,驱动板可接3路双向控制设备和两路单向设备,双向设备主要是电机机构,目前预留一路,单向设备主要是照明设备。
整体结构
艇身整体如图所示:http://cnlearn.linksprite.com/wp-content/uploads/2013/12/20.jpg推进器图:http://cnlearn.linksprite.com/wp-content/uploads/2013/12/211.jpg推进器图,采用正反旋转方式,从而实现前进后退功能;http://cnlearn.linksprite.com/wp-content/uploads/2013/12/221.jpg方向舵装置,采用正反旋转方式,从而实现左右转弯功能。
电路结构
电路结构图如下所示:http://cnlearn.linksprite.com/wp-content/uploads/2013/12/252.jpgPC机与pcDuino通过网线连接,pcDuino与Driver板子通过pcDuino的gpio口(此处io7,io8,io9,io10)连接.Driver电路图如何所示http://cnlearn.linksprite.com/wp-content/uploads/2013/12/212.jpg网络监控工具安装:
摄像头视频网络监控工具安装,步骤如下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 :enabled17:在浏览器中输入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:xxD:xx ”实现同时对双电机控制,xx大于20电机正转,小于-20表示电机反转,其它数表示电机停止。
页: [1]
查看完整版本: pcDuino潜水艇启航