基于网络化技术的电机控制系统设计
时间:12-09
来源:互联网
点击:
2 系统软件设计
嵌入式电机控制系统在软件设计上分为主机软件设计与从机软件设计。主机软件设计主要分为主机的SPI驱动程序和主机通信程序。
从程序结构角度而言,设备驱动程序是一组由内核中的相关子例程和数据组成的I/O设备软件接口,它的任务就是向系统提供接口函数。因此每种文件系统或设备都有自己的接口函数,这个函数就是一个fileoperations数据结构,结构中的成份几乎全是函数指针。当内核需要对某个设备进行特殊的操作时,它就调用相应的接口函数即驱动例程。这就使得控制从用户进程转移到了驱动例程,当驱动例程完成控制又返回至用户进程。用户态的程序使用内核提供的标准系统调用来与内核通讯,当每个系统调用被使用时,内核就转到相应的设备驱动例程来操纵。
调用基本接口函数都需要驱动程序的fileoperations结构成员指向open(),read(),write(),release()等函数,实现了xxx_fops结构体内的各个入口点函数后,编写设备驱动程序初始化函数,并在内核启动时注册此函数,完成硬件设备的初始化设置。初始化程序片断如下:
voidinitexxxdevice(viod){
/检查硬件设备是否存在,如果存在进行硬件设备内部寄存器初始化
if(result=registerchrdev(254,"xxxdevice",&xxxefops))
printk("Error:%dinitxxx_device()can'tgetMajorln",result);
}
设备初始化函数中调用函数registerchrdev()来完成注册字符,函数形式如下:
intregisterchrdev(unsignedintmajor,constchar*name,structfileoperations*fop);
fops是指向实现的fileoperations结构体的操作指针。根据这些参数,采用如下命令,在/dev下创建该设备文件名。
mknod/dev/xxxdevicec2540。
主机通信程序流程如图7所示。MEGAl28从机程序的流程图如图8所示。

3 结束语
该系统设计是对嵌入式技术与理论的拓展和应用,是对NETCON网络化控制系统的升级与改进,实现了对电机控制系统实时监控多路电机的状态,并且可以控制任一路电机的转速与相位。实现了单片机与ARM系列处理器之间的通信,解决了利用ARM处理器实现电机控制CPU工作效率低的问题。该方案经过测试应用效果良好,大大提高了CPU的工作效率。但电机的测速精度还有待进一步提高,PWM调速范围有待进一步加大,还需进一步优化程序,提高整个系统的实时性。
嵌入式电机控制系统在软件设计上分为主机软件设计与从机软件设计。主机软件设计主要分为主机的SPI驱动程序和主机通信程序。
从程序结构角度而言,设备驱动程序是一组由内核中的相关子例程和数据组成的I/O设备软件接口,它的任务就是向系统提供接口函数。因此每种文件系统或设备都有自己的接口函数,这个函数就是一个fileoperations数据结构,结构中的成份几乎全是函数指针。当内核需要对某个设备进行特殊的操作时,它就调用相应的接口函数即驱动例程。这就使得控制从用户进程转移到了驱动例程,当驱动例程完成控制又返回至用户进程。用户态的程序使用内核提供的标准系统调用来与内核通讯,当每个系统调用被使用时,内核就转到相应的设备驱动例程来操纵。
调用基本接口函数都需要驱动程序的fileoperations结构成员指向open(),read(),write(),release()等函数,实现了xxx_fops结构体内的各个入口点函数后,编写设备驱动程序初始化函数,并在内核启动时注册此函数,完成硬件设备的初始化设置。初始化程序片断如下:
voidinitexxxdevice(viod){
/检查硬件设备是否存在,如果存在进行硬件设备内部寄存器初始化
if(result=registerchrdev(254,"xxxdevice",&xxxefops))
printk("Error:%dinitxxx_device()can'tgetMajorln",result);
}
设备初始化函数中调用函数registerchrdev()来完成注册字符,函数形式如下:
intregisterchrdev(unsignedintmajor,constchar*name,structfileoperations*fop);
fops是指向实现的fileoperations结构体的操作指针。根据这些参数,采用如下命令,在/dev下创建该设备文件名。
mknod/dev/xxxdevicec2540。
主机通信程序流程如图7所示。MEGAl28从机程序的流程图如图8所示。

3 结束语
该系统设计是对嵌入式技术与理论的拓展和应用,是对NETCON网络化控制系统的升级与改进,实现了对电机控制系统实时监控多路电机的状态,并且可以控制任一路电机的转速与相位。实现了单片机与ARM系列处理器之间的通信,解决了利用ARM处理器实现电机控制CPU工作效率低的问题。该方案经过测试应用效果良好,大大提高了CPU的工作效率。但电机的测速精度还有待进一步提高,PWM调速范围有待进一步加大,还需进一步优化程序,提高整个系统的实时性。
半导体 电子 嵌入式 单片机 电路 ARM LDO 电压 振荡器 Atmel 总线 电阻 二极管 变压器 AVR PWM ADC 看门狗 电路图 MCU 电流 LED 相关文章:
- 航天器DC/DC变换器的可靠性设计(02-12)
- 安森美90W太阳能LED街灯高能效解决方案(05-18)
- 中国安防电子产业发展现状与展望(05-31)
- 用CMOS-NAND门控制水泵(08-10)
- 现实性分析:RFID逐步释放其潜力(06-21)
- 基于 SoPC 的震动信号采集设备设计(08-14)
