控制/MCU
引言
随着人工成本的不断升高,用机器人代替人力去做一些重复性的高强度的劳动是现代机器人研究的一个重要方向。搬运机器人在导航寻迹中,需要后轮驱动电机和前轮舵机的协调工作。搬运机器人电机驱动有其特殊的应用要求,对电机的动态性能要求较高,能在任意时刻到达控制需要的指定位置并且使舵机停止在任意角度;电机驱动的转矩变化范围大,既有空载平整路面行使的高速度、低转矩工作环境,也有满负载爬坡的运行工况,同时还要求保持较高的运行效率。根据以上的技术要求,本文选用了控制技术成熟,易于平滑调速的直流电机作为搬运机器人的执行饥构。
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所示。
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所示。
STM32单片机中文官网
意法半导体/ST/STM
全部0条评论
快来发表一下你的评论吧 !