Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
DIY综合交流区
[空气动力快艇] 终于用ART板完成了个玩具
发布于 2012-10-03 17:59:28 浏览:12996
订阅该版
视频:[视频1](http://v.youku.com/v_show/id_XNDY4MDY5MDQ4.html) [视频2](http://v.youku.com/v_show/id_XNDY4MDc4Mjc2.html) [视频3](http://v.youku.com/v_show/id_XNDY4MDkxMTA0.html) 遥控器使用现成的航模遥控器,使用3个通道。 一个通道控制油门, 一个通道控制舵机调整浆叶方向, 一个通道用来选择前进与后退。 发挥ART多线程的优势,一个主程序控制浆叶,另一个程序监测电池电量。 ====================== 主控制程序 ====================== ```int oil = 8; // 油门输入 int dir = 9; // 方向输入 // #1 int pwm = 7; // PWM输出引脚定义 int in1 = 6; // 电机方向使能1 int in2 = 5; // 电机方向使能2 int dir_value = 0; // 记录当前方向值, 0:停止 >0:前进 <0:后退 // 设置方向 void set_dir(int value) { if(value == 0) { digitalWrite(in1, LOW); digitalWrite(in2, LOW); return; } if(value > 0) { digitalWrite(in1, LOW); digitalWrite(in2, HIGH); } else { digitalWrite(in1, HIGH); digitalWrite(in2, LOW); } } // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. //Serial.begin(9600); pinMode(oil, INPUT); pinMode(dir, INPUT); pinMode(in1, OUTPUT); pinMode(in2, OUTPUT); set_dir(1); } // the loop routine runs over and over again forever: void loop() { int oil_value; // 读取方向输入 { int new_dir; if(pulseIn(dir, HIGH) > 1700) { new_dir = 1; } else { new_dir = 0; } if(new_dir != dir_value) { dir_value = new_dir; set_dir(0); delay(300); if( dir_value == 0) { set_dir(1); } else { set_dir(-1); } } } // 读取油门输入,油门值是反向 oil_value = pulseIn(oil, HIGH); //Serial.println(oil_value); // 为了比较容易停止,只要值大于1850就算到底。 if(oil_value > 1850) { oil_value = 1850; } // PWM值范围是 0~255。换算之 oil_value = oil_value - (1850 - (255 * 3)); oil_value = (255 * 3) - oil_value; oil_value = oil_value / 3; // 限制一下最大值。 oil_value = oil_value / 3; // 调整最小油门,利于电机启动。 if((oil_value > 0) && (oil_value < 20)) { oil_value = 20; } // 油门输出 analogWrite(pwm, oil_value); //Serial.println(oil_value); delay(10); } ``` ====================== 电量监控程序 ====================== ```const int analogInPin = 0; // Analog input pin that the potentiometer is attached to const int LED_Pin = 12; // Analog input pin that the potentiometer is attached to int sensorValue = 0; // value read from the pot void setup() { pinMode(LED_Pin, OUTPUT); digitalWrite(LED_Pin, LOW); } void loop() { // read the analog in value: sensorValue = analogRead(analogInPin); //rt_kprintf("AD:%u ", sensorValue); if(sensorValue < 2700) // 7V { digitalWrite(LED_Pin, HIGH); delay(80); digitalWrite(LED_Pin, LOW); delay(100); digitalWrite(LED_Pin, HIGH); delay(80); digitalWrite(LED_Pin, LOW); delay(2000); } else { digitalWrite(LED_Pin, HIGH); delay(200); digitalWrite(LED_Pin, LOW); delay(5000); } } ``` ================================== 分割线 ======================================== 湖里面水草太多,水下的螺旋浆不能用,所以弄了个水上的。 ![017-芦苇荡近照1.jpg](/uploads/414_7c713254e471f74e0c3ab6850730df88.jpg) [2012-10-03] 刚去试水了,因为还没弄电量指示,不敢开太久。 下次再弄个救援舰,就可以放心开了。 ![017-芦苇荡近照1.jpg](/uploads/414_7c713254e471f74e0c3ab6850730df88.jpg) [2012-10-04] 加装了个电量指示,如果电压低于6.8V就闪灯,然后开回来,电池是7.4V的锂电。 ![017-芦苇荡近照1.jpg](/uploads/414_7c713254e471f74e0c3ab6850730df88.jpg) 使劲塞了塞,都塞进去了。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 水草无压力,直接接近1号亭子。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 不过有位小朋友去玩具店买了个,就杯具了,没开出5米就回不来了。 打算赶过去帮一把。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 快速冲撞。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 我再撞。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 终于撞开了。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 被救的军舰顺利返航。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 有了刚才的救援,信心大增,电压指示灯也没闪,于是放心前行。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 顺利接近2号亭,野鸭估计这是飘来的,不理会。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 继续慢慢接近。 ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 野鸭近照。 ![010-野鸭近照.jpg](/uploads/414_b9175a98cdc67a921501d93db15b3678.jpg) 再继续靠近,那只大的终于跑掉了。 ![011-继续接近-大的跑掉了.jpg](/uploads/414_544010aecb83ac62b4d334ed7e5356b9.jpg) 于是追上去。 ![012-追上去.jpg](/uploads/414_a3ce51dda40c81943efbd75f6e4e8113.jpg) 太慢,追不上,不过我也没想让追上,因为追上了什么也做了,要是惹得它们不高兴了,随便给我扑腾一下我就回不来了。 ![013-速度太慢-肯定追不上.jpg](/uploads/414_87e22277ee1a631318866413734dfff0.jpg) 既然追不上,就跟去芦苇荡看看。 ![014-跟进芦苇荡看看.jpg](/uploads/414_f135421abcc54b2e4ad3c8ce37052a52.jpg) ![015-跟进芦苇荡看看2.jpg](/uploads/414_d170bbba241164f61047acc2d374812e.jpg) ![016-跟进芦苇荡看看3.jpg](/uploads/414_f16b854c2e0c69884b57b5a2cecc18fa.jpg) ![017-芦苇荡近照1.jpg](/uploads/414_7c713254e471f74e0c3ab6850730df88.jpg) ![018-芦苇荡近照2.jpg](/uploads/414_bdf5bf78223302062fb8007c70747a9f.jpg) 都玩了这么久了,得意忘形了,也没见电压指示灯闪,可突然发现浆转一下停一下。 这下慌了,没电了,想挣扎一下开回来,最终是没成功。 最后花了10元钱捞上来。 ![019-捞回来.jpg](/uploads/414_fb3ea99789e2f8d0b324b5f9f2998aa1.jpg) 收工,1是回去把电压警告好好调一下,2是救援舰不弄好是不敢玩了。 更多细节待续。。 ![speed_boat_run.jpg](https://oss-club.rt-thread.org/uploads/414_b4e56782cb5e0363af9a9a55513fceee.jpg) ![speed_boat.jpg](https://oss-club.rt-thread.org/uploads/414_f15ba34ebff674f2fb8c475f42c562a4.jpg) ![000-航行中.jpg](https://oss-club.rt-thread.org/uploads/414_1a334291ccfd7b9d848ff1e9879801f2.jpg) ![001-船身.jpg](https://oss-club.rt-thread.org/uploads/414_56a4abd5bb86ed7f76b7a212b90e96da.jpg) ![002-接近1号亭子.jpg](https://oss-club.rt-thread.org/uploads/414_06daee61fcce91f7f7da62ad6c8f2915.jpg) ![003-.jpg](https://oss-club.rt-thread.org/uploads/414_96b0b9d888ecdcfc4ca41ad3459a6864.jpg) ![003-赶去救援.jpg](https://oss-club.rt-thread.org/uploads/414_77600bdfb52caba5bac5a3ce4e2e5719.jpg) ![004-冲上去撞.jpg](https://oss-club.rt-thread.org/uploads/414_48ad2cde3675697698ae3188754a272c.jpg) ![005-终于撞开了.jpg](https://oss-club.rt-thread.org/uploads/414_053f1651ced52eef1e2a52a9000e960f.jpg) ![006-开回来了.jpg](https://oss-club.rt-thread.org/uploads/414_903fafb20e02cb25de4b1a70ab130bbc.jpg) ![007-继续前进.jpg](https://oss-club.rt-thread.org/uploads/414_a7f5589505cf6d884d8e0ca2aa6df8a8.jpg) ![008-成功接近野鸭.jpg](https://oss-club.rt-thread.org/uploads/414_9eda6fee9b17b71adcb034b4db6298fc.jpg) ![009-成功接近野鸭2.jpg](https://oss-club.rt-thread.org/uploads/414_281369ce3871ab97f19c7486f7f95209.jpg)
查看更多
16
个回答
默认排序
按发布时间排序
grissiom
2012-10-03
这家伙很懒,什么也没写!
遥控的?
geniusgogo
认证专家
2012-10-03
这家伙很懒,什么也没写!
>遥控的? --- 必须的,难道还会是语音控制? 嘿嘿,站在岸上语音指挥也不错哦 [s:175]
chairang
2012-10-04
这家伙很懒,什么也没写!
哈哈哈,好牛逼的样子啊,偷拍啊?
geniusgogo
认证专家
2012-10-04
这家伙很懒,什么也没写!
舰上装了摄像头? 貌似没看到,相片是你划船拍摄的? [s:154]
littleworm
2012-10-04
这家伙很懒,什么也没写!
哇塞 niubility啊····· 好玩 ··· 你这个可以叫 气垫船 吧 没看到转向的舵机? 怎么转向的?
aozima
2012-10-04
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!多用整理的好的文字,比截图更省流量,还能在整理过程中思考。
>舰上装了摄像头? 貌似没看到,相片是你划船拍摄的? [s:154] --- 有个30X的相机(手持颤抖机)。 正在准备救援舰,上面准备安装机械手和摄像机。 >哇塞 niubility啊····· >好玩 ··· >你这个可以叫 气垫船 吧 >没看到转向的舵机? 怎么转向的? --- 浆就在安装在舵机上面。
bernard
2012-10-04
这家伙很懒,什么也没写!
可惜呀,错过了niubility的现场
pldjn
2012-10-04
这家伙很懒,什么也没写!
拍照也做在船上了吗。
grissiom
2012-10-04
这家伙很懒,什么也没写!
牛!遥控信号是怎么传送的?不会是拿航模的遥控器遥控的吧……
aozima
2012-10-04
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!多用整理的好的文字,比截图更省流量,还能在整理过程中思考。
>牛!遥控信号是怎么传送的?不会是拿航模的遥控器遥控的吧…… --- [s:163] 就是用的现成的遥控器,WIFI难度大些,没办法快速DIY。 后面会增加WIFI的,用于大容量的数据传输。
撰写答案
登录
注册新账号
关注者
0
被浏览
13k
关于作者
aozima
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!多用整理的好的文字,比截图更省流量,还能在整理过程中思考。
提问
92
回答
4479
被采纳
379
关注TA
发私信
相关问题
1
[项目]搞个开源的硬件项目
2
硬件计划贴,及时更新,欢迎提意见
3
软件计划贴,及时更新,欢迎提意见::WMA,MOUNT,LWIP等问题急需解决.
4
MMS协议
5
定点的wma解压库-libwma
6
QQ群记录 [20090821]
7
STM32网络收音机PCB报名征集
8
第一版调试记录
9
第二版硬件讨论
10
RADIO项目相关模块规格--欢迎大家自己做板时规格与此兼容,减少重复劳动
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
TinyUSB Demo运行教程
2
RT-Thread学习大礼包一键带走!
3
freemodbus从机调试说明
4
【1024】瑞萨 RA 系列 BSP 制作与适配最新版本的 Keil 、 RSC、固件,较新的 FSP
5
基于 RT-Thread 星火一号开发板的俄罗斯方块
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
ART-Pi
FinSH
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
rt-smart
FAL
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
cubemx
PWM
flash
packages_软件包
freemodbus
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
ulog
C++_cpp
at_device
本月问答贡献
用户名由3_15位
10
个答案
1
次被采纳
KunYi
4
个答案
1
次被采纳
踩姑娘的小蘑菇
2
个答案
1
次被采纳
bernard
1
个答案
1
次被采纳
rv666
1
个答案
1
次被采纳
本月文章贡献
出出啊
1
篇文章
2
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
4
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部