步进电机正反转实验报告.doc
步进电机正反转实验报告步进电机正反转实验报告一、实验名称:步进电机正反转训练二、控制要求要求实现电机的正转三圈,反转三圈,电机正转和反转的频率可不相同,然后这样循环3次,3次后电机停止转动。三、PLCI/O地址分配表PLC的I/O地址Y0电机转向输出点Y1电机的转速输出点连接的外部设备控制转速点CP控制转向点CW四、程序梯形图五、程序分析:M11、M12、M13的波形图M21、M22、M23的波形图电机正转的频率是20赫兹,通过MOV指令送到D5中,在电机正传三圈后,电机反转,反转的频率是40赫兹,通过MOV指令送到D5中。电机正转3次,反转2次,再通过M23得电进入正转,重复上面的循环,即电机正转后再反转,M23才得电一次,所以可以加一个M23控制一个计数器计数,当计数器计数到3时,再通过计数器的常闭开关把M10线圈断电,从而实现电机停止。扩展阅读:微机实验报告 步进电机正反转及调速设计微机原理与接口设计实验报告步进电机正反转及调速设计专业:机械设计制造及其自动化班级:10090112小组成员:周先军10901239张赓10901240胡一国08901312组别:B5摘要:本系统是基于STM8系列单片机的步进电机转速转向控制器。该系统采用STM8S103F3P6单片机作为主控制器,运用L298全桥驱动器驱动步进电机,通过摇杆、按键控制电机转速,并且通过1602液晶显示器显示当前转速。该系统中使用的四相步进电机,具有控制精度高,转动扭矩大等特点,实际生产中有广泛的运用。系统中除了传统按键控制外,还增加遥控控制,单片机通过AD读取摇杆控制信号,实时控制电机转速。整个系统具有结构简单、可靠性高、成本低和实用性强等特点,具有较高的通用性和应用推广价值。关键词:控制单片机控制驱动电路正反转摇杆四相步进电机STM8L2一、系统方案1.1控制系统方案方案一:采用8086系列单片机。8086是Inter系列的16位微处理器,数据处理能力强。但是8086系列的CPU指令数据需要放置在内存中,需要依赖外部非易失存储器和RAM才可以工作,外部电路复杂。方案二:采用STM8系列单片机。STM8是意法半导体生产的8位单片机,哈弗结构。拥有8K字节Flash,1K字节RAM,1KEEPROM,内部集成5路10位ADC,高级控制定时器可带死区控制PWM、以及SPI、I2C等接口。整体性能优越,价格便宜,周边电路简单。综上对比,选择方案二。1.2驱动电路方案方案一:采用ULN2021达林顿管阵列控制电机。ULN2021是高耐压、大电流复合晶体管阵列,由七个硅NPN复合晶体管组成,工作电压高,工作电流大,灌电流可达500mA。但系统采用通用四线四相步进电机,需要两路同时灌、输电流,该驱动设计只能满足5线步进电机的驱动,不符合要求。方案二;采用L298集成全桥驱动芯片。L298内部含有4通道逻辑驱动电路,是一种二相和四相电机专业驱动器,内含有两个H桥的高电压大电流双全桥式驱动器,接受标准的TTL逻辑电平信号,可驱动46V、2A以下的电机。具有灌电流功能。适用于本系统采用的4线步进电机,经对比采用方案二。1.3控制信号采集方案一:通过按键输入,控制电机转速加减。有液晶屏幕辅助显示设定电机方案二:通过PS2摇杆和MMA7361加速度传感器产生欲控制的信号,通过单对比两种方案,方案二操作更加方便直观,用户体验乐趣强,电路设计简单。转向、转速信息。片机的AD采样进行信号采集,进行实时控制。因此采用方案二。1.4电源供电电路本系统中步进电机供电7.2V,单片机控制板供电5V,最小系统板供电3.3V,传感器供电3.3V。为了使用方便,本系统采用7.2V电池组统一供电。通过开关电源芯片TPS54331降压到5V,为单片机控制板供电;采用LM1117-3V3线性电源芯片降压到3.3V,为单片机和传感器供电。1.5系统组成框图图1.5二、硬件设计2.1、驱动电路(L298)图2.12.2、控制系统电路(STM8)图2.22.3、供电电源电路(TPS54331)图2.3三、软件设计整个系统软件分为AD信号采集和电机信号输出两个部分。采集信号的AD值与程序设定的中值范围(AD0-AD1)进行比较。小于AD0,输出反转信号;大于AD1,输出正转信号。实际AD值与中间值差值,对应输出信号频率,从而控制步进电机转速。(附录1)开始初始化While(1)AD采样AD=中间值停止4.2电机控制信号测试为了检测单片机输出信号,在控制电路板上安装了一组LED灯。通过观察LED灯的闪烁顺序,校验输出电机的信号相序。单片机通过PA5采集传感器信号,通过PC3、PC4、PC5、PC6四个I/O口输出控制信号。默认状态为低电平,对于LED为亮;当I/O口置高,LED灯熄灭。用摇杆摆动输入欲控制信号,单片采样处理后输出,通过观察熄灭LED灯的流动顺便和周期大小,可以直观的反映I/O口输出信号,从而能很好的校验输出相序信号。4.3测试结果分析连接好个模块电路,接通电源。首先使用摇杆做传感器,摇杆复位处于中间状态时,电机停止;往左摇动,电机反转,往右摇动,电机正转。而且摇动幅度越大,转速越快。使用加速度,将传感器平放,电机停止;向左倾斜,电机反转;向右倾斜,电机正转;倾斜角度越大,转速越快。经过以上测试,该系统比较好完成了题目的设计要求。五、总结本设计较完满的完成了题目的基本要求。采用STM8单片机,运用C语言编写程序;运用AltiumDesigner设计PCB电路,通过打印、转印、腐蚀、钻孔等工序制作腐蚀电路板;通过网站下载芯片PDF文档,学习了怎么使用新的电子芯片,设计周边电路。传感器部分使用PS2摇杆和加速度传感器,使得实际操控有很多的乐趣。通过本设计,很好的了解了电路板的设计制作过程,增强了团队的合作精神。通过测试,成功实现了四线步进电机的正反转及转速控制。附件1/*微机原理与接口设计B5LED流水灯(步进电机)周先军2021425*/*Includes-*/#include"stm8s.h"#include"USART.h"#include"delay.h"#include"1602.h"#include"PWM.h"#include"TIM.h"#include"ADC.h"#include"GPIO.h"#include"eeprom.h"#include/*Privatedefines-*/voidCLK_Configuration(void);voidGPIO_Configuration(void);voidEXTI_Init(void);/*Privatefunctionprototypes-*/串口参数u8RxBuffer140;u8RxCounter1=0;u8RxBuffer240;u8RxCounter2=0;voidmain(void)u16AD;inti;CLK_Configuration();GPIO_Configuration();ADC_Init(2,ADC1_PRESSEL_FCPU_D8);ADC_Init(3,ADC1_PRESSEL_FCPU_D8);ADC_Init(4,ADC1_PRESSEL_FCPU_D8);ADC_Init(5,ADC1_PRESSEL_FCPU_D8);ADC_Init(6,ADC1_PRESSEL_FCPU_D8);Init_1602();/UART1_DeInit();Uart1_Init(115200);_enable_interrupt();/开中断printf("rnprintfisOK");while(1)AD=Get_ADC1_Value(3);/*25000L/512L;3.3V对应1024PD2B4(1);B5(1);C3(0);C4(0);C5(0);C6(0);i=1000;if(ADC4(1);delay_ms(i);C4(0);C5(1);delay_ms(i);C5(0);C3(1);delay_ms(i);C3(0);elsei=0;i=Get_ADC1_Value(3);printf("ANI3=%dtn",i);/i=Get_ADC1_Value(4);/printf("ANI4=%dt",i);/delay_ms(200);/*系统时钟初始化*/voidCLK_Configuration(void)CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1);voidGPIO_Configuration(void)PA3_OUTPC3_OUTPC4_OUTPC5_OUTPC6_OUTPD4_OUTPD5_OUTPD6_OUTGPIO_DeInit(GPIOD);GPIO_Init(GPIOD,GPIO_PIN_0,GPIO_MODE_OUT_PP_LOW_FAST);#ifdefUSE_FULL_ASSERTvoidassert_failed(u8*file,u32line)while(1)#endif第 6 页 共 6 页