基本思路:本来是想做一个像遥控汽车一样的遥控小车,但手里没有红外遥控器,只有两个摇杆模块,所以就先做了摇杆控制的摇控小车,无意间发现科学老师那里有个液压机械手,我们就想着怎么把机械手装到小车上,让小车成一个可以抓取东西的简易移动摇控机械手。
液压机械手
要把这个机械手装到小车上,其实很简单,拆掉它的注射器,直接螺丝拧到小车底盘上就可以了(如图)。
安装到小车的效果
怎么让它动起来,从科学老师那受到启发,利用“连杆”原理解决。所以本来是研究遥控汽车,结果最终改为研究“连杆”装置,小木棍,雪糕棒,等试过了,但手里工具有限,无法实现我们想要的效果,最后老师提出可以用吸管试试,虽然可能不是很结实,但经过反复的尝试,修改,基本实现了我们想要的效果。
材料清单
- Arduino UNO主板 X1
- 扩展板 X1
- 90度舵 X1
- 360度舵机 X2
- 轮胎 X2
- 牛眼万向轮 X1
- 摇杆模块 X2
- 摇杆模块 X1
- 杜邦线 X若干
- 液压机械手 X1
- 吸管 X
步骤1 米思奇编写程序。
(因为手里只有2个360度舵机,我们想着让它连续旋转也可以做成小车,所以先完成了小车的程序)先初始化舵机,2个舵机分别接管脚3、5(360度舵机,我们测试0度是正转,180度是反转,90度的时候是停止状态,但其中一个90度时还在轻微的转动,微调测试85度的时候才能完全停止,所以1个90度,1个85度)。
小车一般有5种状态,前进、后退、停止、左转、右转,按照我们的测试结果,2个舵机分别装在小车底盘的左、右两侧,其中有一个轮是反转的,为了使思路更清晰一些,我们使用了自定义函数,分别把小车的5种状态,都用函数定义出来,如下图所示:
小车直行:gostraight左舵机3以0度正转,右舵机5以180度反转(同时向前)
小车后退:goback左舵机3以180度反转,右舵机5以0度正转(同时向后)
小车停止:stop左、右舵机90|85度,停止转动
小车左转:turnleft左3以0度正转(后退),右5以0度反转(前进)
小车右转:turnleft左3以180度反转(前进),右5以0度正转(后退)
步骤2 摇杆控制小车的程序
摇杆有4个方向,上、下、左、右,分别控制小车前进、后退、左转、右转,处大中间位置时停止。
串口打印,摇杆A1(上、下)、A2(左、右)模拟输入端口在4个方向上的数值,监视器观察记录下数据变化。
编写如下程序:当A1 、A2都大于20小于1000时,摇杆在中间位置,小车停止;否则如果A1大于1000时(上)前进,小于20时(下)后退,A2小于20时(左)左转,大于1000时(右)右转。
步骤3 组装小车。
安装360舵机、牛眼万向轮到小车底盘,连接主板、摇杆,测试小车效果。
步骤4 制作连杆,安装90度舵机。(基本确定舵机的安装位置,根据舵机和机械手的距离,制作连杆装置的长度)
步骤5 编写摇杆控制90度舵机,带动机械手的程序。
(舵机连8数字口,因为机械手只有开、合两个动作,所以只连接A4模拟输入口,大于1000时开,小于20时合。)和摇控小车原理相同。
步骤6 下载程序,测试完成。
健航2024.05.15
666