4.1 主控制器軟件設計
主控制器采用嵌入式plc芯片組,完成開關量輸入輸出、uart0、uart1、can、rs485/232互連和通信功能。基本軟件框架由以下七個子程序組成。
init-config:端口初始化程序,完成輸入輸出端口配置,中間變量初始化,啟動spi。
init-start:上電初始化程序,復位所有輸出口。
init-set:設置初始化程序,復位所有輸出口。
init-run:運行初始化程序。
step:指令周期掃描程序
tms:2.5ms周期掃描程序,采樣輸入口狀態、刷新輸出口狀態、spi通信報文的發送和接收。
scan:演算周期掃描程序,輸入口狀態濾波,spi通信報文的解讀。
4.2 從控制器軟件設計
從控制器采用c8051f330單片機,指令運算速度高達25mips。從控制器對輸入脈沖采樣,接受主控制器發送的命令并進行相應的處理,輸入脈沖經過分頻后,輸出相應頻率的脈沖,并將有關信息發送給主站控制器。從控制器的作用相當于一個執行機構,它接受主控制器的命令執行不同的動作,并把執行的狀態反饋給主控制器,主要由以下5個功能程序組成。
start:上電復位初始化程序,輸入輸出端口配置,復位中間變量單元,啟動spi、int0中斷。
int-int0:外部中斷0服務程序,對輸入脈沖進行分頻處理及脈沖插補。
int-spi:spi中斷服務程序,spi通信報文的接收和發送。
int-t3:定時器t3中斷服務程序,監控spi通信狀態和主程序執行狀態。
main:主程序,解讀spi通信報文,完成脈沖點動、定位。
4.3主從控制器的組合設計
主、從控制器之間以spi接口連接,spi通訊速率為500kbit/s,因此有利于提高系統的快速性和實時性。
主站采用定時發送/接收模式,嵌入程序初始化時,啟動spi發送,定時時間到,先接收一字節數據,然后發送下一字節數據。當所有報文發送完成后,暫停發送等待主程序處理報文,報文處理完后才啟動下一輪發送。
從站采用中斷接收/發送模式,進入中斷服務程序后,先接收一字節數據,然后發送一字節數據,當所有報文接收完成后,對應的有相同字節的報文發送完成。此時從站停止接收報文,等待主程序處理接收到的報文,報文處理完后,又啟動下一輪報文接收過程。
報文結構:stx+報文內容+etx+crc。
stx:報文起始代碼,固定為02h。
報文內容:起始2個字節為命令字對應的ascii碼,以區別不同的報文,后面為報文實際 數據,全部采用ascii碼。
etx:報文結束代碼,固定為03h。
crc:校驗和,報文內容所有字節相加后再加etx的數值,然后轉換成ascii碼。
5 應用舉例
5.1控制設備名稱
控制設備名稱:4套色圓網印花機控制系統。
用戶評論
共 0 條評論