當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]本文基于RS485總線(xiàn),以ARM微控制器LPC2138為核心構(gòu)建了一個(gè)分布式控制系統(tǒng),依靠ARM微控制器的強(qiáng)大的控制處理能力和豐富的外設(shè),實(shí)現(xiàn)了智能化的控制和更大程度的系統(tǒng)集成

摘   要:本文基于RS485總線(xiàn),以ARM微控制器LPC2138為核心構(gòu)建了一個(gè)分布式控制系統(tǒng),依靠ARM微控制器的強(qiáng)大的控制處理能力和豐富的外設(shè),實(shí)現(xiàn)了智能化的控制和更大程度的系統(tǒng)集成,文中給出了部分電路圖,闡述了系統(tǒng)中引入的無(wú)極性連接和IAP(在應(yīng)用可編程)技術(shù)。
關(guān)鍵詞:分布式;RS485;ARM;IAP

引言
    分布式控制系統(tǒng)(Distributed Control System,DCS)是應(yīng)用計(jì)算機(jī)技術(shù)對(duì)生產(chǎn)過(guò)程進(jìn)行集中監(jiān)測(cè)、管理和分散控制的綜合性網(wǎng)絡(luò)系統(tǒng)。目前,采用微控制器作為分布控制核心,通過(guò)RS485網(wǎng)絡(luò)構(gòu)建的分布式控制系統(tǒng)在工業(yè)、農(nóng)業(yè)、醫(yī)療等領(lǐng)域獲得了廣泛的應(yīng)用,例如,分布式溫室環(huán)境信息監(jiān)測(cè)系統(tǒng),分布式水下電腦燈控制系統(tǒng)等等。

    LPC2138是飛利浦公司推出的基于ARM7TDMI-S 內(nèi)核的微控制器,它具有非常豐富的外圍模塊,強(qiáng)大的處理和控制功能,非常易于構(gòu)建嵌入式系統(tǒng)。用它構(gòu)建的分布式控制系統(tǒng),不僅體積小,性?xún)r(jià)比高,而且還具有穩(wěn)定可靠、功能強(qiáng)大、開(kāi)發(fā)周期短等特點(diǎn)。


                          圖1  系統(tǒng)總體設(shè)計(jì)框圖


LPC2138微控制器介紹
    LPC2138內(nèi)嵌512KB的高速Flash存儲(chǔ)器和32KB的RAM,具有豐富的外設(shè)資源:2個(gè)32位定時(shí)器(帶捕獲、比較通道);2個(gè)10位8路ADC;1個(gè)10位DAC;PWM 通道;47路GPIO;9個(gè)邊沿或電平觸發(fā)的外部中斷;具有獨(dú)立電源和時(shí)鐘的RTC;多個(gè)串行接口(UART、I2C、SPI、SSP)。它內(nèi)含向量中斷控制器,可配置中斷優(yōu)先級(jí)和向量地址,片內(nèi)Boot裝載程序可以實(shí)現(xiàn)在系統(tǒng)/在應(yīng)用編程(ISP/IAP),通過(guò)片內(nèi)PLL可實(shí)現(xiàn)60MHz的CPU操作頻率,具有空閑和掉電2種低功耗模式,并且可通過(guò)外部中斷喚醒。

控制系統(tǒng)設(shè)計(jì)
    在分布式的控制系統(tǒng)中一般采用通用的單片機(jī)作為控制處理的核心,不僅速度慢信息處理能力弱,而且一般需要附加許多外圍電路,例如RAM、ROM、ADC、DAC、看門(mén)狗等等。采用ARM微控制器LPC2138為核心的分布式控制系統(tǒng),通過(guò)擴(kuò)展簡(jiǎn)單的外圍電路(顯示模塊、中斷鍵盤(pán)、RS485模塊),開(kāi)發(fā)相應(yīng)的嵌入式程序即可實(shí)現(xiàn)功能強(qiáng)大的系統(tǒng),不僅具有較高的系統(tǒng)集成度和穩(wěn)定性,而且開(kāi)發(fā)周期比較短。本文所設(shè)計(jì)系統(tǒng)總體框圖如圖1所示,包含了OLED顯示、中斷鍵盤(pán)、RS485接口和EXT_CON接口(用來(lái)功能擴(kuò)展的預(yù)留接口)。

顯示系統(tǒng)設(shè)計(jì)
    系統(tǒng)顯示模塊采用OLED顯示模塊VGS12864E,它是64×128矩陣式單色圖形字符顯示模塊,由于采用有機(jī)發(fā)光技術(shù),無(wú)需背光源,所以與傳統(tǒng)LCD相比在陽(yáng)光照射下更能呈現(xiàn)清晰的圖像和數(shù)據(jù)。另外它還具有高亮度、高對(duì)比度、寬視角、低驅(qū)動(dòng)電壓和高發(fā)光效率等優(yōu)越的特性,較寬的溫度范圍(存儲(chǔ)溫度:-30℃~80℃,工作溫度: -20℃~70℃)也能適應(yīng)更惡劣的環(huán)境。

    VGS12864E使用兩片列驅(qū)動(dòng)控制器,內(nèi)嵌64×64顯示數(shù)據(jù)RAM,RAM中每位數(shù)據(jù)對(duì)應(yīng)屏上一個(gè)點(diǎn)的亮、暗,每個(gè)半屏都被分成了按行的八頁(yè),因?yàn)槊總€(gè)字節(jié)的數(shù)據(jù)按低位(LSB)在上,高位(MSB)在下的結(jié)構(gòu)排列,所以在提取字庫(kù)的時(shí)候,需要設(shè)置取字模的方式為:縱向取模,字節(jié)倒序。它與LPC2138的連接如圖2所示。ARM和OLED之間需要加電平轉(zhuǎn)換芯片,本設(shè)計(jì)采用16位雙向電平轉(zhuǎn)換芯片IDT74FCT164245,另外進(jìn)行電平轉(zhuǎn)換時(shí)需要進(jìn)行方向控制(圖2中DIR即為方向控制腳)?!?/P>


                            圖2  OLED顯示連接示意圖

 
RS485接口電路設(shè)計(jì)
    RS485通信部分采用TI公司的SN65HVD24 收發(fā)芯片,它具有較高的共模電壓范圍(-20~25V),支持最多256個(gè)節(jié)點(diǎn),高達(dá)16kV的ESD,通信速率在500m時(shí)最高達(dá)3Mbps。為了防止串行通信時(shí)外界干擾引入微控制器,在微控制器和RS485通信芯片間加入了光電隔離電路,電路圖見(jiàn)圖3。

                           圖3  RS485通信接口電路圖


無(wú)極性連接設(shè)計(jì)
   實(shí)現(xiàn)無(wú)極性連接有利于工程施工,方便系統(tǒng)擴(kuò)容。如果采用差分曼徹斯特編碼的方法雖然可靠性高,但需要增加編解碼器,提高了硬件復(fù)雜性。本系統(tǒng)采用了異或門(mén)和軟件編程的方法實(shí)現(xiàn)。即在信息輸入輸出部分增加異或門(mén)進(jìn)行控制,當(dāng)連接錯(cuò)誤的時(shí)候控制引腳輸出高電平對(duì)信息取反,連接正確引腳輸出低電平信息不變。通過(guò)程序?qū)崿F(xiàn)系統(tǒng)的自動(dòng)信息監(jiān)測(cè)和自動(dòng)控制,由主機(jī)發(fā)送系統(tǒng)自檢信息,包括一個(gè)正向數(shù)據(jù)信息和反向的數(shù)據(jù)信息,在信息中包含正反信息碼,當(dāng)從機(jī)接收到這些信息的時(shí)候就可以自動(dòng)調(diào)整自己的控制端進(jìn)行相應(yīng)的控制操作。使用這種方式只需增加少許的軟硬件開(kāi)銷(xiāo)就實(shí)現(xiàn)了無(wú)極性的控制。

在應(yīng)用編程(IAP)實(shí)現(xiàn)
    許多場(chǎng)合(例如地下燈光控制、土壤檢測(cè))在系統(tǒng)布好后就不易進(jìn)行系統(tǒng)重新配置和程序的更新,所以采用IAP技術(shù)不僅使系統(tǒng)的適應(yīng)能力增強(qiáng),工作壽命增長(zhǎng)而且維護(hù)比較方便。

    LPC2138的IAP程序位于Boot Block中,占用12KB存儲(chǔ)空間,位于地址0x0007D000~ 0x0007FFFF的Flash中,同時(shí)它的最低64字節(jié)也出現(xiàn)在從地址0x00000000開(kāi)始的Flash存儲(chǔ)器區(qū)域,所以復(fù)位后中斷向量被激活,跳轉(zhuǎn)到Boot Block裝載程序的入口。Boot裝載程序控制復(fù)位后的初始化操作,并提供實(shí)現(xiàn)Flash編程的方法。

    IAP程序是Thumb代碼,位于地址0x7FFFFFF0(重映射后地址)處。IAP的功能可用下面的C代碼來(lái)調(diào)用。

(1)定義IAP程序的入口地址(由于IAP地址的第0位是1,因此,當(dāng)程序計(jì)數(shù)器轉(zhuǎn)移到該地址時(shí)會(huì)引起Thumb指令集的變化)
#define IAP_LOCATION 0x7FFFFFF1
(2)定義數(shù)據(jù)結(jié)構(gòu)或指針
unsigned long command[5];
unsigned long result[2];
(3)定義函數(shù)類(lèi)型指針
Typedef void (*IAP) (unsigned int[],unsigned int[]);
IAP iap_entry;
(4)設(shè)置函數(shù)指針
iap_entry = (IAP) IAP_LOCATION;
(5)調(diào)用IAP
iap_entry (command,result);

    程序開(kāi)發(fā)采用ARM公司的集成開(kāi)發(fā)工具ADS1.2,把終端程序分為主程序和更新程序兩部分:

    主程序用來(lái)實(shí)現(xiàn)終端的功能,是需要進(jìn)行更新的部分,更新程序僅負(fù)責(zé)主程序的更新。編譯鏈接時(shí)主程序占據(jù)0~14扇區(qū),更新程序占據(jù)22~26扇區(qū),15~21扇區(qū)用來(lái)存儲(chǔ)待更新主程序。更新程序用到的數(shù)據(jù)定義到片內(nèi)RAM中0x40007800~0x40007FFF區(qū)域。另外為了實(shí)現(xiàn)主程序和更新程序的精確定位,設(shè)置ARMLinker中Linktype用Scattered方式,它能根據(jù)格式文件中指定的地址映射生成ELF格式的映像文件。

    更新過(guò)程可大體分為程序更新準(zhǔn)備和程序更新兩個(gè)階段:

    準(zhǔn)備階段分三步完成,首先主站通過(guò)RS485總線(xiàn)將編譯過(guò)的新終端主程序(不包含更新模塊)分成小的數(shù)據(jù)單元下傳給終端,終端將收到的經(jīng)校驗(yàn)正確的數(shù)據(jù)存儲(chǔ)到片內(nèi)Flash存儲(chǔ)器中,然后主站查詢(xún)終端代碼的接收情況,并對(duì)傳輸錯(cuò)誤的部分重新下傳進(jìn)行更正,最后主站發(fā)送啟動(dòng)更新指令,終端檢驗(yàn)程序數(shù)據(jù)正確性并置上更新標(biāo)志,停止刷新看門(mén)狗,從而使終端復(fù)位。

    程序更新分兩步完成,首先終端重啟時(shí)檢測(cè)到更新標(biāo)志有效即可調(diào)用更新程序進(jìn)行程序更新,程序更新完成后再次使終端自復(fù)位,即可運(yùn)行更新后的程序代碼,完成程序更新全過(guò)程。

    另外,由于IAP服務(wù)代碼是Thumb指令,用C程序直接調(diào)用時(shí)須在設(shè)置編譯參數(shù)ATPCS時(shí)選中Arm/ThumbInte2rworking項(xiàng)。由于執(zhí)行IAP命令使用片內(nèi)RAM頂端的32個(gè)字節(jié)空間,因此用戶(hù)程序不應(yīng)該使用該空間。調(diào)用IAP功能前,要關(guān)閉PLL、MAM(存儲(chǔ)器加速模塊)部件及所有中斷以及正確設(shè)置系統(tǒng)時(shí)鐘。

結(jié)語(yǔ)
    基于ARM微處理器的分布式控制系統(tǒng)不僅提高了系統(tǒng)集成度,增強(qiáng)了系統(tǒng)功能和系統(tǒng)穩(wěn)定性,而且通過(guò)其強(qiáng)大的處理能力和IAP技術(shù)也使得系統(tǒng)智能化程度提高,符合分布式控制系統(tǒng)的發(fā)展方向。

參考文獻(xiàn)
1.Philips Semiconductor . LPC2131/2132/2138 User Manual. 2004/11/22
2.周立功, 張華 等. 深入淺出ARM7——LPC213x/214x(上冊(cè))[M]. 北京:北京航空航天大學(xué)出版社, 2005年6月第一版
3.趙會(huì)賓, 田慶春. 利用LPC2214的IAP功能實(shí)現(xiàn)程序遠(yuǎn)程更新[J]. 無(wú)線(xiàn)電工程, 2006年第36卷第7期
4.吳強(qiáng), 周小芳. RS-485網(wǎng)絡(luò)通信的無(wú)極性接線(xiàn)設(shè)計(jì)[J]. 電子工程師, 2005年12月第31卷第12期
5.王永清, 左敬志, 朱保昱. 基于MSP430F123的分布式水下電腦燈控制系統(tǒng)[J]. 現(xiàn)代電子技術(shù), 2005年第5期總第196期

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉