基于ARM9的自由擺平板控制系統(tǒng)設計
摘 要: 介紹了自由擺平板控制系統(tǒng)的設計及實現(xiàn)。其硬件系統(tǒng)主要包括S3C2440嵌入式最小系統(tǒng)、步進電機驅動器、輸入及顯示、傳感器系統(tǒng)4個部分。軟件部分實現(xiàn)傳感器數(shù)據(jù)采集、步進電機控制、控制算法實現(xiàn)及整體系統(tǒng)協(xié)調。通過對軟硬件的整體調試使系統(tǒng)達到設計要求,性能優(yōu)越。
關鍵詞: S3C2440;MMA7455;自由擺;平板控制;PID
本設計的重點在于通過加速度傳感器MMA7455采集各關節(jié)處角度信息,并根據(jù)得到的角度值及任務要求控制步進電機的運轉,完成自由擺臂末端平板姿態(tài)的調整,完成預定任務。通過MMA7455加速度傳感器得到的是三軸加速度信息,而在實際控制過程中所需要的是角度信息,所以要用到三角函數(shù)完成加速度值到角度值的轉換,其次實踐證明MMA7455加速度傳感器穩(wěn)定性較差,需要通過滑動平均濾波算法對得到的三軸加速度值進行濾波處理,以達到精確控制的目的。而對于步進電機的精確控制則需要PID控制算法以去除控制過程中的抖動,達到自控系統(tǒng)“穩(wěn)、準、快”的設計要求。綜上所述,本系統(tǒng)中存在大量的數(shù)據(jù)運算及控制算法并且對實時性要求較高,因此選用主頻高達400 MHz的S3C2440作為主控芯片,一方面能保證系統(tǒng)基本功能的實現(xiàn),另一方面有助于系統(tǒng)中各種性能指標的提升。
1 硬件系統(tǒng)設計
本自由擺平板控制板采用S3C2440作為主控芯片,外接Nor Flash AM29LV160DB、Nand Flash K9F1208及兩塊SDRAM HY57V561620構成嵌入式最小系統(tǒng)[1-4]。Nor Flash和Nand Flash同時存在的好處在于Nor Flash中存放BootLoader完成系統(tǒng)調試及NandFlash中程序的燒寫,方便調試。系統(tǒng)設計了5個功能按鍵分別接到S3C2440 5個外部中斷引腳(EINT8、11、13、14、15),另外接5個LED(GPH9、GPH10、GPF6、GPG1、GPB1)作為各類狀態(tài)的指示信號。通過S3C2440 6個普通I/O口模擬兩路IIC接口(GPF0~GPF5)分別接加速度傳感器1、2。4個I/O(GPE11、12、13、GPG2)口接步進電機驅動器。如圖1所示。
2 軟件系統(tǒng)設計
本系統(tǒng)軟件設計相對較復雜,既要考慮系統(tǒng)基本功能的實現(xiàn),又要考慮系統(tǒng)易于使用。從軟件功能看,主程序主要完成鍵值處理、LED顯示、調用相應任務子程序模塊以及各個任務模塊下相應算法的實現(xiàn),系統(tǒng)主流程如圖2所示。
2.3 平板旋轉任務的實現(xiàn)