本设计的重点在于通过加速度传感器MMA7455采集各关节处角度信息,并根据得到的角度值及任务要求控制步进电机的运转,完成自由摆臂末端平板姿态的调整,完成预定任务。通过MMA7455加速度传感器得到的是三轴加速度信息,而在实际控制过程中所需要的是角度信息,所以要用到三角函数完成加速度值到角度值的转换,其次实践证明MMA7455加速度传感器稳定性较差,需要通过滑动平均滤波算法对得到的三轴加速度值进行滤波处理,以达到精确控制的目的。而对于步进电机的精确控制则需要PID控制算法以去除控制过程中的抖动,达到自控系统“稳、准、快”的设计要求。综上所述,本系统中存在大量的数据运算及控制算法并且对实时性要求较高,因此选用主频高达400MHz的S3C2440作为主控芯片,一方面能保证系统基本功能的实现,另一方面有助于系统中各种性能指标的提升。
1硬件系统设计
本自由摆平板控制板采用S3C2440作为主控芯片,外接NorFlashAM29LV160DB、NandFlashK9F1208及两块SDRAMHY57V561620构成嵌入式最小系统。NorFlash和NandFlash同时存在的好处在于NorFlash中存放BootLoader完成系统调试及NandFlash中程序的烧写,方便调试。系统设计了5个功能按键分别接到S3C24405个外部中断引脚(EINT8、11、13、14、15),另外接5个LED(GPH9、GPH10、GPF6、GPG1、GPB1)作为各类状态的指示信号。通过S3C24406个普通I/O口模拟两路IIC接口(GPF0~GPF5)分别接加速度传感器1、2。4个I/O(GPE11、12、13、GPG2)口接步进电机驱动器。如图1所示。
2软件系统设计
本系统软件设计相对较复杂,既要考虑系统基本功能的实现,又要考虑系统易于使用。从软件功能看,主程序主要完成键值处理、LED显示、调用相应任务子程序模块以及各个任务模块下相应算法的实现,系统主流程如图2所示。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉