CH32V307控制四轴机械臂

本文介绍了作者使用CH32V307核心板与Arduino拓展模块,配合摇杆和按键构建一个能控制机械臂动作的系统。硬件包括STM32机械臂、SG90/MG90舵机及各种扩展接口。软件部分涉及STM32F1库移植和IIC驱动。未来计划拓展为蓝牙或远程APP控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前申请了一块南京沁恒的开发板,CH32V307,上面有带Arduino板的拓展口,前段时间刷到了一个摇杆加按键的UNO拓展模块,就想着跟之前的用STM32做的机械臂来结合一下。

8ac4db772f4d8360bc9c85310f8ebfea.jpg

 

现有功能介绍:

摇杆左右方向分别控制机身左右旋转,前后方向控制机臂的前后。斜向则同时控制机械臂的左右和前后两个方向。按键A控制机臂的上升,按键C下降。按键B控制爪子的开,按键D关。按键E复位到初始状态,按键F恢复到复原前状态。

视频演示

硬件部分介绍:

主控:CH32V307核心板。芯片外设十分丰富,性能也不错,可玩性很高。核心板板载了WCH-LINK,只需要一根TypeC的数据线就可以链接电脑下载了,Mounriver开发环境里可以自动识别固件型号下载对应驱动,非常方便。

拓展模块:淘宝买的成品模块,模块上除了摇杆与按键,可拓展的接口也不少,有蓝牙串口,洛基亚5110屏幕,NRF24l01等,但是硬件资料商家没提供,简单抄个板,仅供参考。

abce79f151ea4f98a3ecd7be725aad34.jpg

74d53edfe1d64b6f85ede4b6f7cf03a8.png 

 

 

机械臂:成品激光切割亚克力板加SG90/MG90舵机自己拼的,淘宝还有木板款,拼装可能会更方便些。

舵机:舵机用的SG90和MG90,最开始都是用的塑料的SG90,发现机械臂的夹子的力非常小,底部旋转的舵机在长期运行后,抖动越来越明显,所以把这两个舵机都换成了质量更好扭矩更大的金属MG90。

舵机驱动:由于要使用四个舵机,最好还是不要用USB口的5V来供电,而是使用外部电源再共地。电源用的的成品DC-DC MP2482降压模块,模块上预留了舵机接口,输入端接7V-30V直流。由于没有合适的电源,这里用的是一根USB升压线接5V2A的手机电源适配器来的。

使用的模块0e5235b6ebcdcebf4f9d0b2d7b73cecf.jpg3fed2d49e72c6e8cd7a30ac474c2d07e.jpga0431f86325ac2a74712064ae33ea0e9.jpg

软件部分介绍:

最开始是用的STM32F1的标准库来开发的,跟CH32V307的内核虽然不一样,但是库函数基本上一样的,所以移植起来比较容易。

按使用的库函数简单介绍一下,按键控制:GPIO的上拉输入。摇杆控制:GPIO的模拟输入和数字量的软件滤波处理。舵机角度控制:定时器的输出比较模式输出PWM波和改变CCR来改变占空比。屏幕显示:硬件IIC驱动0.96寸OLED屏幕。

 硬件连接:

舵机编号,控制夹子舵机编号0,控制底部旋转(-90~+90)舵机编号1,控制前后的舵机编号2,控制上下的舵机编号3。0-3号舵机分别连接PB3,PB4,PB6和PB7。按键和摇杆是模块与开发板拼插连接的,对应使用的GPIO分别为,A接PA8,B接PA7,C接PA6和D接PB5,E接PB8,F接PB9。按键的X轴接PA0,Y轴接PA1。ps.由于开发板带了以太网口,所以得在排母上再接上11mm加长排母才能插上去。

 

后续可能的拓展:用RT-Thread实现相同功能,蓝牙串口orNRF24L01加手机APP远程控制。

 

下载链接:程序

 

 

 

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值