当前位置:首页 > 工业控制 > 工业控制
[导读]摘要:针对搬运机器人的前轮转向舵机和后轮驱动电机的控制要求,采用以Cortex-M3为内核的STM32F107作为主控制器,采用嵌入实时操作系统μC/OS-II,将程序分成启动任务、电机转速控制任务、舵机控制任务等相对独立

摘要:针对搬运机器人的前轮转向舵机和后轮驱动电机的控制要求,采用以Cortex-M3为内核的STM32F107作为主控制器,采用嵌入实时操作系统μC/OS-II,将程序分成启动任务、电机转速控制任务、舵机控制任务等相对独立的多个任务,并设定了各任务的优先级。该系统能较好地实现搬运机器人的运动控制。
关键词:搬运机器人;STM32F107;运动控制;μC/OS-II;任务调度

引言
    随着人工成本的不断升高,用机器人代替人力去做一些重复性的高强度的劳动是现代机器人研究的一个重要方向。搬运机器人在导航寻迹中,需要后轮驱动电机和前轮舵机的协调工作。搬运机器人电机驱动有其特殊的应用要求,对电机的动态性能要求较高,能在任意时刻到达控制需要的指定位置并且使舵机停止在任意角度;电机驱动的转矩变化范围大,既有空载平整路面行使的高速度、低转矩工作环境,也有满负载爬坡的运行工况,同时还要求保持较高的运行效率。根据以上的技术要求,本文选用了控制技术成熟,易于平滑调速的直流电机作为搬运机器人的执行饥构。

1 系统的硬件设计
1.1 机器人电机控制器硬件结构
    主控制器采用Cortex-M3内核的STM32F107。控制器内部共有8个定时器,其中TIM1_CH1和TIM8_CH1为高级控制定时器引脚,TIM1_CH1用于电机编码器计数。TLM8_CH1用于舵机控制基准时间。通用定时器引脚TIM2 CH1、TIM3 CH1、TIM4_CH1、TIM5_CH1分别用于电机和舵机驱动电路上下桥壁PWM的产生。
    触发EXIT0中断的PA0口和PB0口分别用于电机和舵机的过流中断保护。触发EXIT1中断的PA1口和PB1口用于舵机两侧限位保护。电机驱动电路采用自举升压芯片IR2103和MOSFET管75N75,后轮电机和舵机的相电流采集是通过康铜丝转换成电压,通过放大滤波处理,分别送至STM3 2F107的A/D采样引脚ADC12_IN1实现过电流保护。通过上位机串口通信或STM32F107内部程序速度给定,控制电机的正反转、速度及舵机的转向。搬运机器人电机控制硬件结构框图如图1所示。


1.2 模块的选择与设计
1.2.1 功率驱动的设计
    电机的供电电源是由24 V的蓄电池提供,额定功率为240W,由4个75N75组成桥式电路来实现。75N75是MOSFET功率管,其最高耐压75V,最高耐流75 A,电机驱动电路如图2所示。


    Q1、Q4和Q2、Q3分别组成两个桥路,分别控制电机的正转和反转。高端驱动的MOS管导通时源极电压和漏极电压相同且都等于供电电乐VCC,所以要实现MOS管正常的驱动,栅极电压要比VCC大,这就需要专门的升压芯片IR2103。控制器产生的PWM信号输入HIN引脚,控制器I/O口输出的EN1、EN2作为使能信号。输出端HO就可得到比VCC要高的电压,且高出的电压值正好是充在电容两端的电压。二极管提高导通速度,使得75N75的导通电阻更小,降低了开关管的损失。同时IR2103的两个输出口HO、LO具有互锁功能,防止由于软件或硬件错误造成的电机上下桥臂直通造成短路。
1.2.2 过流保护的设计
    在电机控制系统中安装过流保护有两方面的意义:一是防止在电机正常运行时,电机出现超载或堵转而使得电枢绕组电流过大损害电机甚至引发火灾;另一方面是由于电机肩动时启动电流很大,往往不能直接启动,既需要等励磁绕组逐渐建立磁场后再正常运行,又希望电机以尽量快的速度肩动起来。有了过流保护对电流进行斩波,可以使电机安全快速地启动。过流保护原理图如图3所示。


    电机的相电流通过康铜丝转换成电压信号Vtext,经过运算放大器放大后的模拟量AD1送至控制器A/D转换模块,同时将经过电压比较器比较后的数字量EVA送至控制器的外部中断口。

2 系统的软件设计
2.1 μC/OS-II的体系结构
    μC/OS-II是一种可移植的、可植入ROM的、可裁剪的、抢占式的实时多任务操作系统内核,具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2 KB。μC/OS-II是用C语言和汇编语言编写的,其中绝大部分代码郜是用C语言编写的,只有极少部分与处理器密切相关的代码是用汇编语言编写。μC/OS-II仅仅包含了任务调度、任务管理、时间管理、内存管理、任务间的通信和同步等基本功能。
2.2 μC/OS-II系统下任务的分配
    成功地将μC/OS-Ⅱ系统移植到STM32F107后,基于μC/OS-II的程序设计是将一个大的应用程序分成相对独立的多个任务来完成。定义好每个任务的优先级,μC/OS-II内核对这些任务进行调度和管理。
    软件设计思路是根据机器人实际运行的需要由上位机通过串口对电机转速和舵机转动位置进行给定。电机的转速是由设定的速度值和由增量式编码器的采集值相比较,经过速度PID算法实现闭环控制。舵机的位置主要是由绝对值式编码器反馈现在位置,根据动作时间要求调节舵机转动的速度。本搬运机器人电机控制系统软件要实现的功能如下:
    ◆上位机给定电机转速、舵机转动角度和动作时间;
    ◆要求电机转速连续可调并且具有良好的静、动态性能,转速没计采用PI算法调节;
    ◆要求舵机快速到达指定角度,有位置反馈作为舵机给定转速的调整;
    ◆具有一定的故障保护功能。当电机出现堵转、电流过大以及舵机触动限位开关时,要求停止驱动模块工作。
    针对以上要实现的功能,可以将应用程序设计分为以下几个任务:
    ①启动任务。对系统进行初始化,创建初始电机状态,然后自我删除,启动任务进入睡眠状态。
    ②电机和舵机保护任务。用于在过流或限位开关动作时响应外部中断,进入中断状态通过发任务信号量,任务程序检测信号量有效并响应该任务,停止输出。任务优先级设为0级。
    ③上位机给定任务。用于上位机控制电机和舵机,任务优先级设为1级。上位机数据输入寄存器时将产生一个中断,该中断将收到的字节送入缓冲区并释放上位机给定任务的信号量;任务中检测到信号量有效便开始执行,将对应的字节信息解析成对应的电机转速和舵机转角位置信息给相应变量赋值。
    ④电机转速控制任务。用于电机的闭环调速,任务优先级设为2级。
    ⑤舵机控制任务。用于控制舵机在规定时间内到达指定位置,任务优先级设为3级。
2.3 启动任务
    主程序中,在调用μC/OS-II的其他任务之前,首先调用系统初始化函数OSInit(),初始化μC/OS-II所有的变量和数据结构;同时,建立空闲任务OS_TaskIdle(),这个任务总是处于就绪态;调用OSTaskCreate()函数建立启动任务;调用OSStart(),将控制权交给μC/OS-II内核,开始运行多任务。
    启动任务是在主程序中创建的,它主要有3个功能:
    ①用于系统初始化(PWM输出模块、串口、ADC模块、输入电平中断功能、定时器)。
    ②建立系统所要用到的信号量。
    ③建立系统的其他任务。
    最后调用OSTaskDel(OS_PRIO_SELF)进行自我删除,启动任务进入睡眠状态。主程序任务流程如图4所示。


2.4 电机转速控制任务
    增量式编码器每次产生外部中断,在中断状态中发出任务信号量,任务程序检测信号量有效并响应该任务,任务中通过测得电机当前转速和给定速度对比实现闭环控制。电机转速控制任务流程如图5所示。


2.5 舵机控制任务
    舵机控制由一个定时器产生基准时间,每隔固定时间发送信号量,任务都将执行一次。舵机控制任务将对绝对值编码器测出的位置和给定的位置进行比较,根据剩余时间调整舵机的转速。舵机控制任务流程如图6所示。



3 系统机电接口
    机器人的舵机由直流电机外连一个30:1的减速机组成。绝对式位置编码器同舵机相连,将舵机的角度信号送到驱动器控制板中。机器人前轮的两个轴由传动杆相连,其中一个轴由传动带与舵机相连,这样在舵机转动时,传动带带动传动杆,保证两个前轮能够同步转动。后轮驱动电机为直流电机,直接与增量式编码器相连,经减速比为25:1减速机减速后,经机械差速器驱动后轮转动。增量式编码器的信号同样送到驱动器控制板中。机电系统结构如图7所示。



结语
    本文实现了搬运机器人的电机和舵机控制器硬件的设计,成功地在STM32F107上嵌入了实时操作系统μC/OS-II,完成了电机和舵机的转速闭环实验。利用Cortex-M3内核控制器和μC/OS-II系统多任务实时性的特点,为后续的机器人图像视频采集和导航寻迹提供了软硬件基础。如果对现有PI算法进行改进,并且能够实现电机速度和电流双闭环控制,则机器人电机的特性将会更好,搬运机器人的应用前景将更加广阔。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

当今,全球正处于一个技术变革的数字化时代,人工作业和简单的传送带模式已经不能满足大批量的规模化生产,物流领域需要更加标准化,更加柔性化,更加智慧化的解决方案。中科天工认为,“未来数字化工厂的柔性智造将会成为竞争的核心要素...

关键字: 智慧物流 中科天工 搬运机器人

全球AMR引领者极智嘉(Geek+)宣布,成功助力韩国知名第三方物流供应商CJ物流(CJ Logistics)在东滩市和军浦市两大配送中心部署超百台AMR机器人。双方强强联手,共同打造韩国3PL领域智慧物流新标杆,以更高...

关键字: 智慧物流 无人驾驶 搬运机器人

摘 要:随着家用电器逐渐增多,节约用电、家庭能耗管控显得愈发重要。考虑到市面上现有插座的固定性和单一性,文中提出一种基于创新型、结构化理念设计的智能插座,将物联网、人工智能、云计算等技术进行融合,使其具有能耗计量、AI...

关键字: 智能插座 云计算 STM32F107 AI学习

摘 要:针对智能种植装置功能的固定性和单一性,文中设计出一种通过手机实现社交、提供种植方案与自动种植的智能种植装置。该装置以STM32F107为主控芯片,利用CC2530搭建无线传感网,通过手机安卓界面实现对植物温湿度、...

关键字: 智能种植 传感器 STM32F107 CC2530

摘要:提出了一种基于ZigBee技术的大棚温湿度无线实时监控系统的设计方法。该方法以SOC芯片CC2530和内核为Cortex-M3的STM32F107及温湿度传感器为硬件平台,可实现对大棚内气体和土壤温湿度的实时采集及...

关键字: CC2530 STM32F107 温湿度 定位

  现在汽车上使用的电器越来越多,驾驶员需要手动操作的电器开关也越来越多,不但增加了驾驶员的负担,还影响了行车安全。本文以STM32F103VET6(以下简称STM32)芯片为控制核心,采用高性

关键字: 语音识别 汽车空调 汽车芯片 控制系统设计

        数字电机控制的首次推出旨在克服传统模拟系统在处理漂移、组件老化和由温度引起的变化等方面的挑战。灵活的软件算法不仅消

关键字: MCU pfc piccolo 电机控制系统 tms320c2000

  随着人口红利逐步消失,我国已成为全球最大的工业机器人市场。根据工信部消息,到2020年,我国将形成较为完整的工业机器人产业体系,高端市场占有率达到45%以上。目前,中国工业机器人的使用主要集

关键字: 工业机器人 搬运机器人

电商行业发展的势头突飞猛进,且有愈演愈烈之势。各大快递巨头更是将这场无硝烟的战场从地上转战到航空。如今,又有智能仓储搬运机器人的实力加盟,相信这场物流业的“速度之战“将拉

关键字: 搬运机器人

铁壁阿童木、机器猫已成为一代人的记忆,小时候被日本机器人的故事感动,长大后却为机器人先进的技术折服,想必这也是那一代人共同的心声。 毕竟这些都是虚拟世界里的机器人,距离人们的生活尚有距离

关键字: 发那科 安川电机 工业机器人 搬运机器人
关闭
关闭