pcDuino潜水艇制作说明-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6594|回复: 1

pcDuino潜水艇制作说明

[复制链接]
发表于 2014-1-7 13:57 | 显示全部楼层 |阅读模式
这是个简易的潜水艇模型,由于艇身狭窄,在结构上没法容纳潜伏控制机械装置,因此整体处于漂浮状态。整体上特点如下

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

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

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

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

5、扩展性强,驱动板可接3路双向控制设备和两路单向设备,双向设备主要是电机机构,目前预留一路,单向设备主要是照明设备。
一:整体结构

艇身整体如图所示:
112541xgod7woe70enucct.jpg

推进器图:

112554ndwd2p0lwaq6vq6x.jpg

推进器图,采用正反旋转方式,从而实现前进后退功能;

112607lvgzwunebv68z8f6.jpg

方向舵装置,采用正反旋转方式,从而实现左右转弯功能。

二电路结构

电路结构图如下所示:

112618htt08u26gnhfue8z.jpg

PC机与pcDuino通过网线连接,pcDuino与Driver板子通过pcDuino的gpio口(此处io7,io8,io9,io10)连接.

Driver电路图如何所示

112646d6rjg8w88vmzzuzc.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 :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表示电机反转,其它数表示电机停止。




发表于 2016-2-18 21:07 | 显示全部楼层
楼主,有此潜艇试航的视频没有啊?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 00:41 , Processed in 0.104998 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表