新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM和CAN總線的嵌入式PLC設(shè)計(jì)

基于ARM和CAN總線的嵌入式PLC設(shè)計(jì)

作者: 時(shí)間:2012-04-10 來(lái)源:網(wǎng)絡(luò) 收藏

本系統(tǒng)軟件部分由下位機(jī)控制程序和上位機(jī)監(jiān)控程序兩部分組成。前者主要負(fù)責(zé)讀取開(kāi)關(guān)量和模擬量的輸入數(shù)據(jù),控制開(kāi)關(guān)量輸出,并且負(fù)責(zé)通過(guò)將數(shù)據(jù)上傳給上位機(jī),以及接收來(lái)自上位機(jī)的命令;后者則通過(guò)人機(jī)交互界面來(lái)監(jiān)控嵌入式的狀態(tài)。系統(tǒng)需要先完成μC/OS-II操作系統(tǒng)的移植,然后利用μC/OS-II操作系統(tǒng)提供的API函數(shù)以及微控制器集成開(kāi)發(fā)工具Keil開(kāi)發(fā)嵌入式系統(tǒng)的控制程序。

3.1 下位機(jī)軟件設(shè)計(jì)

系統(tǒng)下位機(jī)軟件采用模塊化的設(shè)計(jì)方法,把整個(gè)系統(tǒng)分解為幾個(gè)功能相對(duì)獨(dú)立的比較小的程序模塊,分別對(duì)實(shí)現(xiàn)各個(gè)功能的程序模塊進(jìn)行設(shè)計(jì)、編程和調(diào)試。根據(jù)不同模塊在系統(tǒng)中的作用,嵌入式操作系統(tǒng)應(yīng)實(shí)現(xiàn)多個(gè)不同優(yōu)先級(jí)的控制任務(wù)。這些任務(wù)按照優(yōu)先級(jí)從高到低分別為:接收計(jì)算機(jī)控制中心命令;采集和處理數(shù)據(jù);發(fā)送數(shù)據(jù)到本地控制中心。系統(tǒng)啟動(dòng)流程圖如圖5所示。

基于ARM和CAN總線的嵌入式PLC設(shè)計(jì)

通信程序主要由三部分組成:初始化、發(fā)送數(shù)據(jù)、接收數(shù)據(jù)。CAN控制器的初始化流程是:首先將中CAN控制器相關(guān)的引腳使能,然后對(duì)CAN控制器進(jìn)行復(fù)位操作,設(shè)置的通信波特率,最后初始化CAN控制器的工作模式。初始化之后便可以進(jìn)行數(shù)據(jù)的發(fā)送與接收。CAN數(shù)據(jù)發(fā)送是將采集到的數(shù)據(jù)打包成符合CAN發(fā)送幀格式后,調(diào)用CAN發(fā)送數(shù)據(jù)函數(shù)進(jìn)行發(fā)送。數(shù)據(jù)接收程序是從接收緩沖器讀出數(shù)據(jù),同時(shí)釋放接收緩沖器并對(duì)數(shù)據(jù)做出相應(yīng)處理,本系統(tǒng)中CAN總線數(shù)據(jù)接收程序采用中斷法進(jìn)行控制。數(shù)據(jù)發(fā)送和接收流程圖如圖6、圖7所示。

基于ARM和CAN總線的嵌入式PLC設(shè)計(jì)

3.2 上位機(jī)軟件設(shè)計(jì)

上位機(jī)主要實(shí)現(xiàn)CAN總線通信、顯示輸入輸出端口的狀態(tài)等功能,可以接收下位機(jī)傳輸過(guò)來(lái)的數(shù)據(jù),也可以發(fā)送命令控制下位機(jī)的輸出。采用VC++6.0開(kāi)發(fā)環(huán)境的MFC編程實(shí)現(xiàn)上位機(jī)界面編程及與嵌入式之間的通信。實(shí)現(xiàn)界面如圖8所示。

基于ARM和CAN總線的嵌入式PLC設(shè)計(jì)

本文給出了基于和CAN總線的嵌入式PLC系統(tǒng)的軟硬件設(shè)計(jì)方法,實(shí)現(xiàn)了對(duì)12路開(kāi)入量信號(hào)采集;13路開(kāi)出量輸出信號(hào)的控制;8路模擬量的采集。具有LED指示開(kāi)關(guān)量狀態(tài)、遠(yuǎn)程監(jiān)控的功能。采用高性能嵌入式微處理器和嵌入式實(shí)時(shí)操作系統(tǒng)為核心,并使用穩(wěn)定的工業(yè)現(xiàn)場(chǎng)總線,保證了系統(tǒng)的可靠性和實(shí)時(shí)性,達(dá)到了預(yù)期的設(shè)計(jì)要求。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: ARM CAN總線 PLC

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉