外围电路模块
外围电路模块主要负责控制器的电压监控、参数存储、电路译码、光电隔离等功能。其中,电压监控任务由外部看门狗电路完成,本文选用的是DS1834A芯片。此芯片可同时对电路板上+5V和+3.3V电压进行监控,电压安全范围可进行调节,还具有手动复位功能。如果电压超出安全范围,则在相应引脚产生低电平复位信号,直到电压恢复正常后再经过350ms,复位引脚才恢复高电平。若手动复位则两个复位引脚同时产生复位信号。
DSP主处理器执行控制算法所需要的参数存放在外部存储器X25650中,DSP通过串行外设接口(SPI口)模块与X25650相连,从中读取需要的参数数据。
电路译码功能由一块CPLD实现,主要功能包括为ADG508A提供端口选择信号、为AD976提供转换开始信号、为74LVTH245提供输出使能信号、接收AD976转换结束信号并为DSP提供A/D转换结束中断信号、接收DS1834A的复位信号并为DSP提供复位脉冲信号等。
光电隔离器件选用高速光耦6N137,主要是为控制器与外部环境提供隔离,包括PWM脉冲控制信号的隔离和CAN总线通信的隔离。
通信模块
通信模块主要是与主控计算机进行通信,接收主控计算机的命令并为主控计算机提供必要的数据。由于TMS320LF2407A内部带有CAN总线通信模块,所以只需外接一块CAN收发器就可以与外界进行通信。收发器选用的是SN65HVD230芯片,此芯片与传统CAN收发器PCA82C250兼容,且支持3.3V电压,可直接与TMS320 LF2407A连接。为提高通信质量,中间需用光耦进行隔离。
控制流程与分析
此控制器可同时为8路轴系提供控制功能,其工作流程如图4所示,图中虚线所包围部分的功能由控制器完成。
图4 控制系统流程图
具体工作过程为:系统开始运行并完成初始化工作;电压传感器把执行轴系的位置信息转换成电压信号;DSP主处理器向ADG508A发送选择信号,选通一路电压信号经放大器AD622放大后送AD976进行A/D转换。选择哪一路电压由主处理器地址线经译码后对ADG508A的端口选择位进行控制,通常是八路轮流选择。AD976的转换起始也由主处理器控制,转换结束时发出结束信号,经译码后提供给主处理器产生外部中断,主处理器在中断子程序中通过启动电平转换电路读取转换后的数据。AD976的最高转换速率为100KSPS,此速率下,8路同时转换,每一路的转换速率为12.5KSPS,完全可以满足控制的需要。
结语
本文设计的控制器,采用先选路、再放大、最后转换的方式为DSP主处理器提供需要的位置信息。整个控制器结构简单灵活,工作稳定可靠,非常适用于机器人控制,经实践证明,此方法是行之有效的。此控制器最多可同时控制8路轴系,可根据实际情况进行选择,单路转换速率最高达100KSPS。同时,本设计还可以方便地移植到其它类似的控制机构中去,以对各种PWM脉冲驱动的轴系进行控制,是一种多功能通用型控制器。