08
2025
-
02
机器人如何实现移动功能
浏览:516
发布:2025-02-08 12:31:04
引言— 移动功能回顾
在前面两篇《如何制造足球机器人》文章中,我们主要围绕机器人本体进行了硬件设计,而这次将以控制器为中心,开展软件设计工作。在正式开始之前,先为大家回顾一下机器人如何实现移动功能的设计。
本体的移动采用三组名为“全向轮(lún)”的(de)特(tè)殊轮胎,如下图 (图1) 所示。它们能够支持垂直方向的移动,从而实现八个方向的移动控制。
操作上,利用英飞凌的 3D 磁传感器设计了一个类似游戏机手柄的操纵(zòng)杆(gān),以(yǐ)控(kòng)制(zhì)机(jī)器(qì)人移动。此外新增三个按钮,分别实现右转、左转和停止功能,使控制器具备共计 11 种移动控制选项。下图 (图2) 为控制器的外观设计:

图2 控制器外观
控制器实现与控制原理
由于控制器需实现 11 种本体动作控制,因此每个条件使用 4 个 I/O 引脚向机器人本体发送信号。此外,当发送信号时,为了判断动作是否与实际信号匹配,在机器人本体的四个角上安装了指示灯,以便对应每种动作信号的反馈情况。输入端口与反馈信号的对应关系如下表 (表1) 所示:

表1 控制器输入端口与和反馈信号的关系
控制器与 3D 磁传感器及微控制器 (MCU) 之间通过 I2C 通信协议进行信号传递,MCU 作为主控设备,3D 传感器作为从设备,实现各类信号的交换。下图 (图(tú)3) 显(xiǎn)示(shì)了(le)控(kòng)制(zhì)器(qì)工(gōng)作(zuò)的(de)简(jiǎn)单(dān)流(liú)程(chéng)图(tú):

图(tú)3 控(kòng)制(zhì)器(qì)工(gōng)作(zuò)流(liú)程(chéng)图(tú)
一(yī). 当(dāng)控(kòng)制(zhì)器(qì)打(dǎ)开(kāi)时(shí),微(wēi)控(kòng)制(zhì)器(qì)将(jiāng)写入的 I2C 发送到 3D 传感器以更改初始设置,如下图 (图4) 所示:

图4 I2C 主写入的波形
二. 通过移动操纵杆,MCU 接收来自 3D 传感器的因操纵杆倾(qīng)斜(xié)生(shēng)成(chéng)的(de) 3 轴(zhóu)磁(cí)通(tōng)密(mì)度(dù)数(shù)据(jù),并(bìng)使(shǐ)用(yòng) X 轴(zhóu)和(hé) Y 轴(zhóu)把(bǎ) 3 轴(zhóu)磁(cí)通(tōng)密(mì)度(dù)信(xìn)息(xi)转(zhuǎn)成(chéng)操(cāo)纵(zòng)杆(gān)的(de)角(jiǎo)度(dù) θ,如(rú)下图 (图5) 所示:

图5 操纵杆和角度检测
三. 当 MCU 向 3D 传感器读取数据时,使用 UART 进行调试,以便查看三个轴的磁通量密度和与磁通量密度(dù)对(duì)应(yīng)的(de)操(cāo)纵(zòng)杆(gān)角(jiǎo)度(dù) θ。

图(tú)6 I2C 主写(xiě)入(rù)的(de)波(bō)形(xíng)
四(sì). 根(gēn)据(jù)计(jì)算(suàn)出(chū)的(de)角(jiǎo)度(dù) θ,MCU 通(tōng)过(guò)无(wú)线(xiàn)通(tōng)信(xìn)将(jiāng)移(yí)动(dòng)控(kòng)制(zhì)信(xìn)号(hào)传(chuán)输(shū)至机器人本体。五. 停止、左转、右转功能通过机械按钮实现,优先级最高,可覆盖其他状态。
软件设计
在本项目中,使用的 MCU 是英飞凌的 PSoC 系列,这款产品支持模拟/数字电路的灵活配置,具备高度可定制化的特点。下图 (图7) 为英飞凌 PSoC 组件示例图:

图7 英飞凌 PSoC 组件示例
总结
本文主要介绍了制造足球机器人中的软件设计部分。
相关新闻