找回密码
 立即注册
搜索
查看: 4935|回复: 1

我通过WHEELTEC串口工具发送串口3的命令轮子无法转动???

[复制链接]

1

主题

1

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2022-10-25 14:47:15 | 显示全部楼层 |阅读模式
1. 问题的背景:
a. 我买了小车的下位机stm32和驱动板,b. 还买了两个霍尔编码器的电机24V的差速轮。客服说我要了差速轮的代码,stm32默认的是光电编码器的程序,我修改了Robot_Select()函数:

void Robot_Select(void)
{
        // The ADC value is variable in segments, depending on the number of car models. Currently there are 6 car models, CAR_NUMBER=6
        Divisor_Mode=4096/CAR_NUMBER+5;

        // OLED上显示的Type是 5
        Car_Mode=(int) (Get_adc_Average(CAR_MODE_ADC,10)/Divisor_Mode);
        ............

        #elif Diff_Car // 差速轮
        {
                // 入口参数:轮距:0.295m,轴距,电机减速比:27,编码器精度,轮胎直径:0.125m
                Robot_Init(0.295f, 0, MD36N_27, Hall_13, SENIOR_DIFF_Tyre_Diameter); //SENIOR_DIFF_27
        }
        #endif
}



2.  Balance_task函数:
if(CONTROL_DELAY<Time_count && Time_count<CONTROL_DELAY+100) //Advance 1 seconds to test
{
    Drive_Motor(0.02, 0);
    robot_mode_check();
}


开机上电的时候,客服说会前进一下,我上电后,OLED会从off,十秒后变成on,但是轮子没有动?


3. 上电后,  手动转动两个电机轮子,OLED屏幕是会显示MA 和 MB两个编码计数有在增加,L:和R:速度也有变化,陀螺仪数据也有变化,说明线接的都是对的。


4. 我的问题:
我通过wheeltec的串口工具:发送串口3接收的命令,想让轮子动起来。
命令如下:7D 00 00 00 C2 00 00 00 F2 4D 7B,  我给了,x轴速度194,z轴速度242


回复

使用道具 举报

19

主题

331

帖子

964

积分

高级会员

Rank: 4

积分
964
发表于 2022-10-26 15:46:13 | 显示全部楼层
本帖最后由 WHEELTEC_WU 于 2022-10-26 15:56 编辑

1.开机成功后OLED会从off,十秒后变成on,但是轮子没有动。这是正常的,小车并没有接受到速度
2.你发送的数据针头和针尾就不对,至于校验位是否正确需要你自己去计算。
7B 00 00 00 64 FF 9C 01 2C 51 7D这个是我们这边计算出来的机器人前进速度为100mm/s,同时横向移动速度为-100mm/s,同时旋转速度为 300*0.001rad/s 的速度控制命令。你可以参考下
另外,有关STM32向ROS发送数据的具体内容查看我们附送资料中3.ROS开发手册里的  2.STM32运动底盘开发手册_ROS教育机器人
STM32向ROS发送的数据.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

粤ICP备20017043号|小黑屋|手机版|Archiver|轮趣科技(东莞)有限公司  

GMT+8, 2024-11-23 11:29 , Processed in 0.057068 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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