接前一篇文章,自制麦克纳轮小车用手柄的方向键控制小车的各种运动。小车的运动有直行和转动两种,直行分为前进、后退、左移、右移、左对角线前进、左对角线后退、右对角线前进、右对角线后退,小车转动分为逆时针自转、顺时针自转、左转大圈、右转大圈,
总共12种运动。这12种运动全部用手柄的方向键和按键控制,即使用到摇杆也是用的摇杆的按压功能,总感觉到没有发挥一个手柄该有的功能。从小玩游戏、玩遥控小车都是用摇杆,有几次用按键的?小时候借别人的游戏机玩,既使只有方向键也是四个键固定在一起的。
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/d9e5e63ec8720019954fa5406b361dec.png)
想来想去,心有不甘,必须用摇杆控制小车的各种运动!
1. 程序代码
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/6461e4278f0a920fb6efc17e869ad925.png)
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/e854326515beb7e84aa76af0c2bd431a.png)
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/d895dab87bc3d5f9ce2ffbadf13d65ba.png)
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/8c2e4d3d61c6755fc525d7602c6351c0.png)
程序编写中用到了变量,设置按下手柄的SELECT键实现左摇杆前进、后退、左移、右移和左对角线前进、左对角线后退、右对角线前进、右对角线后退的切换。设置SELECT键的去抖时间为0.2秒,这四种运动都属于直行的范畴。
用到手柄右侧四个功能键实现逆时针自转、顺时针自转、左转大圈、右转大圈,4中转动模式。手柄左侧四个方向键,前侧面四个键直接没使用,预留给后续硬件使用。
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/e1cddd9b9b835876a0bdb44bc38a7119.png)
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/c96b4432b16ad1bb7306fe3840eb1ecf.png)
2. 云台舵机的使用
在5月份天水市第四届中小学人工智能大赛时,比赛要求自带器材。当时我购买了一个云台,安装后一直闲放着,这次想到安装到麦克纳轮小车上。云台底部舵机我用的是360度舵机,底部是180度舵机。考虑到某些场合可以使用,纯粹是玩为主。也想到了360度舵机转动时会把舵机电源线缠绕起来,反正没其他和云台搭配能用的设备,缠线了再说。
云台固定小车前部好看,可是螺丝孔和舵机云台对不上,就用尼龙扎带固定。小车的主板孔和小车螺丝孔对不上就是用扎带和热熔胶固定的。固定好,下一步编程让云台180度舵机动起来!
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/91849e9993062a37eae1955477d9dd94.png)
舵机角度是调整了多次得到的最佳的结果,不做任何操作时舵机托盘朝前。舵机用手柄的右侧摇杆控制,往前推摇杆舵机抬头。右摇杆的其他方向留下来,为以后硬件预留操作。
等过几天网上买的双180度舵机云台到了,再改装一下实现底部也能控制转动。
3. ESP32-CAM摄像头使用
云台托盘空着总不是个事,想到我有个直播间买的上当受骗买的运动相机可以用在云台上。这个相机像素太差了,和直播间宣传的差太远了!倒是外壳好看,也就没退货。装在云台上倒是特别漂亮,但是相机重云台显得不稳,总有折断舵机的冲动!小车不敢走,一走立刻折断舵机或者损坏云台。相机外壳拆了只留相机却没法固定,只好拆了运动相机另想它法了,相机继续仍在抽屉里去。
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/79495dafe69a04264545b9abd716a9e1.png)
看着云台托盘空着心里不是个事,想给那固定个小玩偶得了,觉得太幼稚了。再想想我还有柚子相机,相机大小和运动相机去掉外壳接近,还是没法固定。而且柚子相机要按下相机自带的掌控板按键才能拍照,又不能实施视频监控,不适合固定在云台当监控用。
突然想到我有个能联网的摄像头主板,赶紧翻找。去年还在造物记写过这个摄像头的文章,太好了!不仅大小合适,云台能轻松按装下,而且重量很轻,云台没有压迫的感觉,小车随便运动云台稳稳不晃动。最主要的一点是,摄像头可以实时视频传输,实现视频监控用途。上次发造物记文章时给摄像头传了程序,不需要在研究怎么编程了,太好了!!!
参看我ESP32-CAM文章esp32 CAM折腾记- Makelog(造物记) (dfrobot.com.cn)
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/8f2fe719a1159f87177b87187d83b8a4.png)
ESP32-CAM的供电是个头痛的问题,找了根不用的数据线用充电宝供电摄像头能够正常工作。正常工作具体就是能能够正常联网,实时传输视频。充电宝提供的是5V电压,小车无线电机驱动器V5.5上有很多电源接口都是5V,可以尝试用电机驱动板上的接口来供电。剪短数据线用万用表检测好数据线的正负极性,接在驱动板上可以点亮ESP32-CAM。但是无法联网,手机热点始终检测不出设备联网。改成充电宝又能正常联网、传输视频了。充电宝太大了,没法固定在小车上。灵机一动,我还有一个小车用充电锂电池!用电烙铁、热缩管、杜邦线制作了电池和ESP32的电源线,效果相当好!可以正常联网、传输视频!下面为摄像头实时视频监控画面,手机和电脑都可以观看。
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/15aaf258400963314bbd6fcca2a885e7.png)
![8.jpg](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/721ad9a906c56fa862af97cfecc52c31.jpg)
![9.jpg](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/7078a92316920374972ec97dd7df3fb8.jpg)
![10.jpg](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/49f2f2eb2ad8284f9f97adcba13c3628.jpg)
![11.jpg](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/0c2d13670c100d9e2b9e12f00b46064a.jpg)
成功了!下一步是增加其他硬件模块,继续改装小车……机械手臂、双180度舵机已经在发货运输的途中,电机编码器,步进电机云台、坦克底盘,准备挑选购买!太阳能充电……变形小车也在设想中……编程实现巡线功能,运动功能全部集中在左侧摇杆,变量检测用3的倍数实现,其他按键、摇杆为新功能、新设备预留,美好的生活从创客开始!
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/e0178654c417552da9f26bb682c5ba3a.png)
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/992f8c1bdd1ac5fa56fc6ccd8f9d9ba5.png)
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/4d4d0c4a6498fdcbbdb47052d2d1af26.png)
![image.png](https://makelogimg.dfrobot.com.cn/makelog/60abce20aa613609f270a04c/a113c250884c7950d65a3803d6201e7d.png)
评论