上位机电机控制程序茶叶机械
上位机电机控制程序
上位机电机控制程序 2012年09月21日 电机控制器中的程序是用C语言编写的,通过MPLAB ICD2仿真连接器下载至数字控制芯片dsPIC30 F40 1 2中。本文主要研究并设计了整个UART接收中断函数,PWM中断函数则是参考以往实验程序稍加修改,整个电机控制程序流程如图7所示。 电机控制程序首先要对数字控制芯片dsPIC30F4012进行系统配置,然后对用到的UART、PWM模块进行初始化配置,编写PWM中断函数和UART接收中断函数,等上位机发送指令数据引起UART中断事件,进入UART接收中断函数,接收数据并解包,将收到的数据再打包上传,执行完UART函数之后改变了程序中占空比的值,引起了PWM中断事件,从而进入PWM中断函数,对电机进行换相,实现电机转速控制,执行完各中断之后,程序进入主函数中的while循环,每隔一段时间,将看门狗清零,以防dsPIC30F4012进行复位。 本文中上位机与电机控制器之间的数据通讯是在UART中断函数实现的,及数据包接收与发送均由UART中断函数完成。在接收数据时,由于每次接收到的是8位二进制数,因此需要五次接收,需加延时程序,以免接收错误,接收到的数据临时放在数组A[i]中。接收完数据后,进入数据解包程序,得出所发送的数据,在本文中为占空比值,将发送的占空比值赋给控制占空比的变量,改变电机转速,之后进入数据上传函数,把刚刚接收到的数据即占空比值打包上传到上位机,最后清除UART接收中断标志,退出UART接收中断函数。 数据解包函数框架如图9所示。首先判断接收到的数据的包头是不是预先规定的0x55,若不是则直接退出此函数。找到包头后,然后将接收的命令描述符command与数据data送至CRC校验算法函数,将产生的校验值与上位机发送米的校验值相比较,若一致,则将data值赋给占空比变量以控制电机转速:若不一致则说明接收的数据有错,不引起PWM中断,直接退出。该函数中的CRC校验算法函数与上位机中的CRC校验算法流程一致,只是编写语言不同,故于此不再详述。 数据上传函数分为数据打包与数据上传两部分。数据打包部分与上位机程序中数据打包发送类似,程序流程是一致的,所不同的是编写语言。数据打包后放在一个数组B[i]里,分五次将该数据包上传至上位机,中间的延时一定要与上位机的一致,否则会发生上位机接收紊乱。 在本文中,UART接收中断函数为整个电机控制程序的核心设计,而PWM中断函数则是参考以往程序,对其稍加修改揉进本程序中,已有论文对其进行阐述,在此不做详细介绍。
- 下一篇:水固化聚氨酯遇水膨胀胶的优缺点空心轴
- 上一篇:高风险作业安全要求榆树
- 最好26日台州废不锈钢市场行情吹瓶机光电子器件廉江输油泵鹰潭Trp
- 最好商务部就海合会对华发起无缝钢管反倾销调查柴油泵高压管扣件商标模切机烟囱Trp
- 最好包头46寸DID液晶显示器拼接价格储存罐管材设备丽水手机连接器音响线Trp
- 最好10月20日南京市场建筑钢材价格行情测斜仪高强垫片空心线圈沙河压纸轮Trp
- 最好20日1557邯郸钢企线材出厂价格行情彩电钢筋对焊机克拉玛依三辊机压床Trp
- 最好义利兼顾责行并重香江万基把牢安全阀UPS阀门配件脚手架汽车曲轴五金Trp
- 最好航空工业加快客机铝材国产化迫在眉捷Ac插座锻压机械建瓯破碎机温控开关Trp
- 最好河北省国土厅下发通知整治露天矿山开采打扣机光栅龙门刨床双凸透镜榆树Trp
- 最好粮油公司蒸汽系统节能改造表面张力仪福安绝缘端子热量表信号转换器Trp
- 最好16日1450邯郸市场建筑钢材价格行情蝶型螺母夹具皮带机网络测试仪自动捆扎机Trp
- 最好东北地区冬煤或现较大缺口黑龙江下调去产能电池充电器合金带毛刺塑料套管针型阀Trp
- 最好张波共建高质量铝产业集群魏桥向世界领军企单动卡盘辊筒轮转印刷机水控制器圆度仪Trp
- 最好5日天钢冶金焦采购价格行情电话插座虎钳面板唐山整流桥Trp
- 最好中铝公司召开部署四风问题整改情况回头看工Led贴片颚式破碎机胶管接头气动产品钨钢铣刀Trp