实验目的 本节视频的目的是掌握GPIO模拟输出PWM的方法,学习步进电机的控制原理,并实现步进电机的控制。 实验原理先来看一下硬件原理图,可看到控制步进电机的管脚分别为:GPIO6[2]、GPIO6[3]、GPIO6[4]和GPIO1[15]。使用的是一路四相五线步进电机,使用的电机驱动芯片是L9110。 四相五线步进电机的控制方法有两种,四相四拍和四相八拍。本实验中使用的是四相四拍,称为全步控制。 四相:步进电机中有四组线圈。 四拍:步进电机A,B,C,D四组线圈的通电时序,四拍的驱动正转通电顺序为A-B-C-D-A-B-C-D-……循环往复,-A-B-C-D-四拍为一个循环周期。 五线:步进电机引出的接线数量为五根。 步进电机工作原理步进电机是利用电磁铁原理,将脉冲信号转换成线位移或角位移的电机。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载信号的影响。每给电机加一个脉冲信号,电机就转过一个步距角,带动机械移动一小段距离。 步进电机的速度控制:通过输入的脉冲频率快慢实现的。当发生脉冲的频率减小时,步进电机的速度就下降;当频率增加时,速度就加快。还可以通过频率的改变而提高步进电机的速度或位置精度。 步进电机的位置控制:靠给定的脉冲数量控制的。给定一个脉冲,转过一个步距角,当停止的位置确定以后,也就决定了步进电机需要给定的脉冲数。 程序流程程序流程设计中首先要进行UART2初始化和DSP中断初始化,接着进行矩阵键盘初始化和外设使能配置,然后进行管脚复用配置和定时器初始化,接着初始化定时器中断,最后进行矩阵键盘扫描并控制步进电机的转动。 管脚复用源码管脚复用配置GPIO复用配置操作直接封装成了函数,使用时,相关函数通过“gpio.h”文件引用。 StarterWare API 接口:GPIOBank0Pin0PinMuxSetup(); 方向配置源码第一个参数时GPIO的基地址,第二个参数是GPIO的编号,第三个参数设置GPIO的方向 管脚方向配置使用StarterWare 的库将 GPIO 口配置为输出或输入。使用时,直接包含“gpio.h”文件即可。 StarterWare API 接口:GPIODirModeSet(SOC_GPIO_0_REGS, 141, GPIO_DIR_INPUT); 数据配置源码第一个参数是GPIO的基地址,第二个参数是GPIO的编号,第三个参数设置GPIO的电平 数据寄存器配置使用 StarterWare 的库来设置GPIO的值。 使用时,直接包含“gpio.h”文件即可。 StarterWare API 接口:GPIOPinWrite(SOC_GPIO_0_REGS, 105, GPIO_PIN_LOW); 定时器配置源码第一个参数是定时器模块寄存器的基地址,第二个参数是用于配置定时器模块。 定时器配置使用 StarterWare 的库来配置定时器。 使用时,相关函数通过“timer.h”文件引用。 StarterWare API 接口:void TimerConfigure(unsigned int baseAddr, unsigned int config) 周期配置源码第一个参数是定时器模块寄存器的基地址,第二个参数是要设置周期的定时器,第三个参数是设置的周期大小 定时器周期配置使用 StarterWare 的库来配置定时器周期。 使用时,相关函数通过“gpio.h”文件引用。 StarterWare API 接口:void TimerPeriodSet(unsigned int baseAddr, unsigned int timer, unsigned int period) 定时器使能源码第一个参数是定时器模块寄存器的基地址,第二个参数是要使能的定时器,第三个参数是配置使能定时器的模式。 定时器使能配置使用 StarterWare 的库来使能定时器。 使用时,相关函数通过“gpio.h”文件引用。 StarterWare API 接口:void TimerEnable(unsigned int baseAddr, unsigned int timer, unsigned int enaMode) 操作现象硬件连接本实验使用的硬件接口为步进电机和UART2 RS232接口,所需硬件为实验板、仿真器、RS232 交叉串口母母线、USB转RS232串口线和电源。 (1)使用 RS232 交叉串口母母线和 USB 转 RS232 串口线连接实验板的UART2串口和电脑的 USB口。 (2)连接仿真器和电脑的USB接口, (3)将拨码开关拨到DEBUG模式01111,连接实验箱电源,拨动电源开关上电。 串口调试工具调节(1)先在设备管理器查看串口的端口号; (2)再设置串口调试工具, 软件操作设置好串口调试工具后,在CCS里进行相关操作 导入工程,选择Demo文件夹下的对应工程 编译工程 将CCS连接实验箱并加载程序 点击运行程序,实验板上步进电机开始转动,串口调试终端打印步进电机转动的信息。 Direction 表示转动方向,正方向转动为 Forward,反方向转动为 Backward; SpeedLevel表示转速,最慢为 0,最快为 5; 按键 7 控制转方向。 按键 8 控制加速。 按键 9 控制减速。 按下按键 7 调转方向,按下按键 8 加速,实验板上步进电机开始反方向转动
|