这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » TMS320LF2407A 请教TMS320LF2407A串口通信与电机控制问题

共2条 1/1 1 跳转至

TMS320LF2407A 请教TMS320LF2407A串口通信与电机控制问题!谢谢各位指点!

院士
2006-09-17 18:14:16     打赏
TMS320LF2407A 请教TMS320LF2407A串口通信与电机控制问题!谢谢各位指点!



关键词: TMS320LF2407A     请教     串口     通信     电机    

院士
2006-12-22 22:43:00     打赏
2楼
问 正在用PTR3000无线通信模块控制一个小型机器人(用PC机发指令,下面用DSP来处理接收到的指令),在波特率为38400的时候,效果很不错,电机转速很正常;而且反应也很快,但是随着波特率的降低,效果越来越差,在9600的时候还能基本满足要求,但将波特率降至4800的时候,驱动电机(普通直流电机)出现类似爬行的现象,时走时停,基本上不能动.
找了很久的原因,还是没找出原因来,我想原因只可能来自两方面:通信模块的问题或者是驱动程序的问题(是用PC机控制的,应该与PC机上的程序没有关系).我不清楚通信波特率与电机调速周期是否有关?请各位帮忙分析下原因,十分感谢!! 1: 倒,那当然了!! 通讯的时间也是在速度的PID之内的倒,那当然了!! 通讯的时间也是算在速度环之内的,建议如果可能的话,我把速度环的时间分为2个部分,1是速度环程序计算时间,2、是通讯时间。如果1+2的时间为一个固定的时间,那么当你加大了通讯时间,就势必要提高速度环的程序计算时间,但这个时间又不可能小于其电流环的响应时间的。。
  仅供参考!!! 2: 谢谢指点!第一次做这个东东,有点不懂!   我是采用的这种控制方式:
命令发送:  由PC机发送一个速度命令,底层DSP接收到后,将速度信息转换成码盘的转速值,并将这个值写到一个数组中,在主程序中不断查询该值,(如果没有再次的通信接收中断,该值将保持不变).

PID调速:  在Timer1的中断中,拿实际码盘转速值与该值比较后进行PID调节.也就是说,如果PC机只发送一次命令,电机将按照命令中的速度永远的转下去.只有PC机发送了另外的速度,电机的速度才会改变.
   
现在的现象:
   波特率为38400bps时,一切正常,即发送某一速度命令后,电机按照这个速度正常转动.
   随着波特率的降低,电机的转动逐渐变的不顺畅起来,当波特率降到4800bps时,电机出现时走时停的现象,而且中间间隔较长.

   根据做的实验,发现的确是底层程序有问题,但是按照这样的控制方式,我个人觉得波特率的降低似乎没有影响.波特率的降低只是在不同的速度切换时反应时间加长,但电机不应该出现时走时停的现象.
   第一次接触这些东西,愚笨之处,见笑了!谢谢各位高手指点!!
   3: 你说的"电机时走时停的现象"应该是这样的..吗??  1、是不是电机是在速度给定时,好象"慢了一下"的现象或者是“电机类似抖颤了一下”的现象,并不是所谓的"时走时停"的现象,再问一下,你的电流环的处理周期应该比较快了吧?!
  2、你的系统如果要不断更新速度值的话,那么速度环的周期就受到通讯的影响就会更大,我的想法是你将DSP上的电流环和速度环的处理周期调到最快,看能不能把这个影响减到最小。
 
  4: 好晕啊 5: To xiaoyuan_ly:谢谢你的指点!  电机的现象是这样的,即我发送一个速度(只发送一个)后,它会转几下,然后停止(间隔较长,约几秒),然后再转,如此反复!我想应该可以称之为"时走时停".如果是在速度切换时出现这个现象,应该是正常的,因为通信速度变慢了嘛.(当然间隔是在一定的范围内).按照我的那个控制方式,只要发送了一次速度,此后如果不在改变速度,通信速率将不产生任何影响(当然,实际要求是要切换速度的),即通信只相当与开关的作用.的确很晕,都好几天了,还没找出原因来.

电流环?不好意思,我没听过这个名词!烦请您详细指点,谢谢! 6: 大概明白搂住的意思了!楼主的控制的话就是一个速度环的PID控制,检测实际速度V1与要求设定的速度V2相比较,来用PID程序控制输出。用PC机设定V2的值。
一些建议:
1,不知道搂主的PC机与2407的串口通信是采用查询呢,还是中断呢?在电机控制时的时间常数是多少? 会不会有可能由于波特率慢下来了后出现时间上的冲突。
2,直接用PC机的串口和DSP先用有线的方式进行通信,等有线通过了再用无线不迟。呵呵。
3,能否用PC机设定速度以后,再把这个设定的速度V2的值传回来,看到底是不是你设定的那个值。
4,可以先做一个开环的控制嘛,先不要把PID的程序加上去,也就是不用反馈先做个简单的测试程序。 7: zxxzhao  8: 谢谢monsterchp及各位关注的高手的建议!   我是采用的中断方式,即如果2407没有再次接收中断,您所说的V2就不会变!PID调速在T1的中断中完成,T1的中断周期是85us.这几天有其他的事情要解决,过几天再那找您的建议一步一步做实验!谢谢您的建议

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]