<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 光電顯示 > 設(shè)計(jì)應(yīng)用 > 片機(jī)驅(qū)動(dòng)LED數(shù)碼管顯示方式

          片機(jī)驅(qū)動(dòng)LED數(shù)碼管顯示方式

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

          針對(duì)多關(guān)節(jié)工業(yè)機(jī)械手的比例和開關(guān)控制,以PLC作為其控制器,通過(guò)無(wú)線數(shù)傳模塊進(jìn)行數(shù)據(jù)傳輸,實(shí)現(xiàn)遠(yuǎn)程無(wú)線遙控操作。

          本文引用地址:http://www.ex-cimer.com/article/168645.htm

          手持操作器采用16位單片機(jī),對(duì)檢測(cè)到的按鈕和搖桿操作進(jìn)行數(shù)據(jù)編碼后通過(guò)無(wú)線的發(fā)送至PLC,PLC對(duì)其解碼后獲得指令實(shí)現(xiàn)對(duì)機(jī)械手各關(guān)節(jié)運(yùn)動(dòng)的控制。該方案成本低,具有良好的通用性和可擴(kuò)展性。

          前言

          可編程序邏輯控制器(ProgrammableLogicController,PLC)是一種適用性強(qiáng)的工業(yè)用控制器,廣泛應(yīng)用于各類工業(yè)生產(chǎn)線,移動(dòng)機(jī)械設(shè)備的控制等環(huán)境較惡劣的工業(yè)場(chǎng)合。其工作性能穩(wěn)定,可擴(kuò)展性強(qiáng),應(yīng)用簡(jiǎn)便。根據(jù)不同的模塊配置,可以進(jìn)行邏輯及算數(shù)運(yùn)算,對(duì)數(shù)字開關(guān)量、模擬量等進(jìn)行控制和采集,同時(shí)具有豐富的總線接口形式,可以利用公開的協(xié)議與不同設(shè)備構(gòu)成復(fù)雜的系統(tǒng)。在我們所研制的工業(yè)機(jī)械手中,各關(guān)節(jié)由比例閥或開關(guān)閥構(gòu)成開環(huán)液壓控制回路,實(shí)現(xiàn)比例調(diào)速或開關(guān)動(dòng)作,因此我們選用了西門子的S7-200系列PLC作為其控制器。[1>[2>

          在一些環(huán)境復(fù)雜的應(yīng)用場(chǎng)合,尤其是對(duì)于移動(dòng)機(jī)械設(shè)備,控制系統(tǒng)的布線受到諸多限制,操作人員與控制系統(tǒng)的位置安排不方便。因此,具有高度靈活性的無(wú)線遙控操作系統(tǒng)的應(yīng)用得到了推廣。目前工業(yè)上應(yīng)用的無(wú)線遙控操作系統(tǒng)一般采用無(wú)線電數(shù)字傳輸。一些芯片廠商如Infineon、Micrel、RFMonolithics、Melexis、CML、ATMEL等也都推出了各種適應(yīng)于不同場(chǎng)合和要求的RF芯片[3>。

          無(wú)線數(shù)傳模塊是一種集成式的專用于無(wú)線數(shù)據(jù)收發(fā)的模塊,可直接通過(guò)數(shù)據(jù)總線與其它控制、采集等模塊連接完成無(wú)線數(shù)據(jù)收發(fā)功能,廣泛應(yīng)用于工業(yè)遙控、遙測(cè),無(wú)線抄表,自動(dòng)化數(shù)據(jù)采集等場(chǎng)合。具有可靠性高,功耗低,協(xié)議透明使用方便等優(yōu)點(diǎn)。傳輸距離可以達(dá)到幾十至上百米,有些甚至可以到上千米的距離。目前很多廠商推出了工業(yè)化、系列化的產(chǎn)品,可以根據(jù)不同的使用場(chǎng)合和要求選擇合適的產(chǎn)品。

          目前一些廠家推出了專用的基于嵌入式處理器的工業(yè)用無(wú)線遙控器,其性能優(yōu)異,集成度高。如HBC、JAY等,應(yīng)用于混凝土泵車、裝載機(jī)等場(chǎng)合。但由于其一般針對(duì)專用工程設(shè)備,不具有較好的通用性及可擴(kuò)展性,且主要是國(guó)外廠家,價(jià)格高昂,其應(yīng)用推廣受到限制。

          在我們研制的多關(guān)節(jié)工業(yè)機(jī)械手中,采用PLC作為其主控制器,完成對(duì)液壓泵站和各關(guān)節(jié)液壓閥的開關(guān)及比例控制,實(shí)現(xiàn)機(jī)械手的基本功能。采用無(wú)線數(shù)傳模塊通過(guò)無(wú)線通信收發(fā)數(shù)字信號(hào),實(shí)現(xiàn)遠(yuǎn)程無(wú)線遙控功能,所設(shè)計(jì)的手持遙控器的輸入開關(guān)量及模擬量由16位單片機(jī)采集并編碼輸出。

          1.總體方案

          該機(jī)械手用于巷道內(nèi)進(jìn)行混凝土噴漿作業(yè),有自動(dòng)和手動(dòng)操作兩種模式。自動(dòng)模式下,PLC控制機(jī)械手各關(guān)節(jié)按程序預(yù)定的軌跡運(yùn)動(dòng),調(diào)整機(jī)械手末端的方位與角度,使噴漿噴頭按設(shè)定軌跡運(yùn)動(dòng),且始終垂直于受噴的巷道面,完成巷道表面的噴漿作業(yè)。手動(dòng)模式下,由操作員分別采用按鈕和比例搖桿對(duì)開關(guān)閥和比例閥進(jìn)行控制,各關(guān)節(jié)運(yùn)動(dòng),控制混凝土噴頭的方位及角度。其中按鈕控制泵站的啟停及開關(guān)閥的方向切換,比例搖桿則根據(jù)操作人員的控制,形成一個(gè)±10V范圍內(nèi)的模擬量,比例閥根據(jù)模擬量的大小及方向,控制關(guān)節(jié)運(yùn)動(dòng)速度的大小及方向。

          在布線方便的情況下,按鈕操作及搖桿操作的開關(guān)及比例信號(hào)可通過(guò)電纜直接輸入到PLC的數(shù)字量及模擬量輸入模塊。這種方式結(jié)構(gòu)簡(jiǎn)單、成本低、可靠性高,控制系統(tǒng)的硬件設(shè)計(jì)及軟件編程極為簡(jiǎn)化。但在實(shí)際工業(yè)現(xiàn)場(chǎng)中,布線受到諸多限制,尤其是對(duì)于移動(dòng)型設(shè)備,采用有線控制方式人員操作不夠方便靈活。由于我們研制的機(jī)械手需要在軌道上長(zhǎng)距離運(yùn)動(dòng),且操作距離較遠(yuǎn),因此必須采用無(wú)線遙控操作的方式。為此我們采用無(wú)線數(shù)傳模塊作為通信模塊,并設(shè)計(jì)了基于16位單片機(jī)的手持式操作器,改進(jìn)后的遙控型機(jī)械手控制系統(tǒng)總體功能框圖如圖2所示。無(wú)線數(shù)傳模塊成對(duì)使用,在手持操作器端和機(jī)械手本體上的控制系統(tǒng)端各有一塊,分別完成數(shù)據(jù)的無(wú)線發(fā)送及接收功能。在控制系統(tǒng)需要的時(shí)候,也可以雙向收發(fā),即同一端的數(shù)傳模塊在數(shù)據(jù)接收和數(shù)據(jù)發(fā)送功能中切換。此時(shí)需要注意,數(shù)傳模塊的發(fā)送與接收功能的切換需要一定的時(shí)間。

          手持操作器根據(jù)操作員對(duì)按鈕及搖桿的不同操作,通過(guò)IO口及AD轉(zhuǎn)換進(jìn)行采集,采集后的信息進(jìn)行數(shù)字編碼后形成指令,以ASCII碼的形式通過(guò)串口發(fā)送到無(wú)線數(shù)傳模塊,無(wú)線數(shù)傳模塊再將指令以無(wú)線方式發(fā)出;機(jī)械手上的控制系統(tǒng)的數(shù)傳模塊接收到發(fā)送來(lái)的指令編碼后通過(guò)串口總線傳送至PLC,PLC對(duì)指令編碼進(jìn)行解碼,分解出不同的操作指令,然后進(jìn)行邏輯運(yùn)算,根據(jù)不同的指令得到不同的需要執(zhí)行的動(dòng)作,再通過(guò)數(shù)字輸出和模擬輸出控制相應(yīng)的繼電器或閥動(dòng)作,從而實(shí)現(xiàn)對(duì)機(jī)械手各關(guān)節(jié)的遠(yuǎn)程無(wú)線操作。通過(guò)信號(hào)電纜連接到PLC的按鈕操作輸入及搖桿操作輸入保留在機(jī)械手本體上,作為備份或檢修使用。同時(shí),在PLC數(shù)字輸入口和手持操作器上均設(shè)置遙控操作切換按鈕,可以進(jìn)入或退出遙控操作模式。PLC上的按鈕操作應(yīng)具有更高的優(yōu)先級(jí)。

          由于搖桿操作采集的對(duì)象為搖桿的比例位置狀態(tài),它采用的是自動(dòng)對(duì)中的設(shè)計(jì)的。因此在控制系統(tǒng)軟件結(jié)構(gòu)上,采用循環(huán)發(fā)送指令的方式。即進(jìn)入無(wú)線控制狀態(tài)后,手持操作器就定時(shí)地將采集到的狀態(tài)發(fā)送出來(lái),而不管此時(shí)有沒(méi)有操作人員的操作輸入。

          2.通信模式選擇

          無(wú)線數(shù)傳模塊一般具備三種接口模式:TTL電平UART接口,可直接與單片機(jī)或其它芯片的串口管腳相連;標(biāo)準(zhǔn)的RS-232接口;標(biāo)準(zhǔn)的RS-485接口。其中232接口模式與485接口模式通過(guò)跳線進(jìn)行切換。西門子的S7-200系列PLC具備一個(gè)或兩個(gè)RS-485標(biāo)準(zhǔn)的接口,因此可以采用后兩種方式,將PLC直接與無(wú)線數(shù)傳模塊的485接口相連;或者利用與PLC相配的PC/PPI電纜將PLC的485接口轉(zhuǎn)換為232接口后,再與無(wú)線數(shù)傳模塊的232接口相連。

          S7-200系列PLC的通訊端口支持多種通訊協(xié)議,此處可以采用的有兩種。一種是西門子的PPI主-從協(xié)議,利用這種協(xié)議主站可以直接對(duì)從站,即控制系統(tǒng)中的PLC,發(fā)出指令,控制從站的各端口及功能。這種方式PLC的編程簡(jiǎn)單,不需要對(duì)原有從站程序進(jìn)行修改。但是PPI協(xié)議不是一個(gè)公開的協(xié)議,在文獻(xiàn)[4>中提到了一種通過(guò)串口偵聽獲取PPI協(xié)議從而利用主站編程控制從站的方式。另外一種通訊模式是自由口模式,利用自定義的PLC程序控制S7-200CPU的通訊端口,使用用戶自己定義的通訊協(xié)議來(lái)實(shí)現(xiàn)與外界的通訊。這種模式支持ASCII和二進(jìn)制協(xié)議。自由口模式使用簡(jiǎn)單、靈活,但需要對(duì)PLC進(jìn)行專門的編程。因?yàn)闊o(wú)線遙控所需數(shù)據(jù)量不大,通過(guò)比較,選擇了自由口通訊模式,以ASCII碼的形式在手持操作器和PLC之間傳遞命令和反饋信息。在PLC內(nèi)編寫了專門的無(wú)線控制程序,實(shí)現(xiàn)無(wú)線控制狀態(tài)下的數(shù)據(jù)通信及對(duì)機(jī)械手的控制。

          無(wú)線數(shù)傳模塊的功能僅為實(shí)現(xiàn)PLC與手持操作器的無(wú)線通信功能,對(duì)于PLC與手持操作器中CPU而言,通過(guò)無(wú)線數(shù)傳模塊的無(wú)線通信與通過(guò)串行端口直接相連的有線通信兩種方式,在編程上是沒(méi)有任何差別的。

          單片機(jī)與無(wú)線數(shù)傳模塊的通信接口則可以選擇三種接口模式中的任一種,既可以采用簡(jiǎn)單的直接相連;為提高穩(wěn)定性,也可以采用232或485芯片進(jìn)行電平轉(zhuǎn)換后再與數(shù)傳模塊相連。為保持更好的可擴(kuò)展性,我們選擇了RS-232接口標(biāo)準(zhǔn)。

          3.手持操作器的設(shè)計(jì)

          手持操作器的功能為通過(guò)處理器的數(shù)字IO及AD功能檢測(cè)按鈕及搖桿上的操作輸入,并將轉(zhuǎn)換后的數(shù)字信號(hào)進(jìn)行編碼后形成控制指令,通過(guò)無(wú)線數(shù)傳模塊發(fā)出。

          XC166系列單片機(jī)是英飛凌科技(Infineon)的16位微控制器產(chǎn)品,其優(yōu)異的內(nèi)核結(jié)構(gòu),高效的指令集,以及不斷擴(kuò)充更新的產(chǎn)品線,使其廣泛應(yīng)用于汽車電子、工業(yè)控制和信息技術(shù)領(lǐng)域。該系列單片機(jī)具有豐富的接口模式,如14通道10位AD變換器,同步/異步串行通道USART,高速同步串行通道SPI,CAN模塊,79個(gè)IO引腳等,并可與各種設(shè)備組成通訊網(wǎng)絡(luò)。同時(shí),該系列單片機(jī)適應(yīng)于惡劣的工業(yè)環(huán)境,工作溫度可在-40~125°C。[6>針對(duì)我們所設(shè)計(jì)的手持操作器的功能,我們選擇了XC166系列中的XC164CS型單片機(jī)。這樣只需附加極少的外圍硬件,就可以實(shí)現(xiàn)所需的功能,同時(shí),使該遙控器具有工作性能穩(wěn)定和易于進(jìn)行功能擴(kuò)展的優(yōu)點(diǎn)。

          手持操作器的功能模塊主要包括AD采樣功能,即采集搖桿操作產(chǎn)生的比例控制電壓;數(shù)字IO功能,即采集按鈕操作狀態(tài)和進(jìn)行一些功能狀態(tài);通訊功能,即定時(shí)地將采集到的控制指令按規(guī)定的格式編碼后通過(guò)串口以無(wú)線的方式發(fā)送。

          手持操作器由電池供電,XC166系列單片機(jī)及無(wú)線數(shù)傳模塊可以滿足低功耗的要求。

          4.數(shù)據(jù)可靠性

          無(wú)線遙控操作系統(tǒng)必須保證數(shù)據(jù)傳輸?shù)母呖煽啃院涂刂频陌踩?,避免發(fā)生失控和錯(cuò)誤控制指令現(xiàn)象,本系統(tǒng)主要通過(guò)以下幾方面來(lái)保證:

          無(wú)線數(shù)傳模塊的高抗干擾能力和低誤碼率,高效前向糾錯(cuò)信道編碼技術(shù);

          串行通訊協(xié)議校驗(yàn),一般采用奇偶校驗(yàn);

          軟件協(xié)議校驗(yàn);通過(guò)軟件編程,對(duì)發(fā)送的數(shù)據(jù)進(jìn)行校驗(yàn),可采用CRC校驗(yàn)、交互確認(rèn)或多次發(fā)送對(duì)比的方式。在我們的程序中采用同一動(dòng)作指令重復(fù)發(fā)送的方式,只有命令指令與確認(rèn)指令完全相同,PLC才接受指令,否則忽略此指令。這樣就完全避免了通信所產(chǎn)生的錯(cuò)誤指令;

          PLC的“軟件看門狗”;在PLC程序中設(shè)置定時(shí)程序,當(dāng)超時(shí)未收到無(wú)線指令時(shí),停止機(jī)械手動(dòng)作,防止由于通訊中斷而使機(jī)械手失控;

          通過(guò)以上四個(gè)措施,可以有效地保證無(wú)線遙控的可靠性,防止產(chǎn)生錯(cuò)誤操作指令或機(jī)械手失控。

          5.結(jié)論

          通過(guò)試驗(yàn)證明,這種采用PLC和無(wú)線數(shù)傳模塊的遙控方式簡(jiǎn)單可行,由于PLC及數(shù)傳模塊都有成熟的工業(yè)化產(chǎn)品,可靠性高,成本低,擴(kuò)展性好,因此本方案具有較高的實(shí)用價(jià)值,簡(jiǎn)化了設(shè)計(jì)過(guò)程。但手持操作器中的單片機(jī)模塊尚需進(jìn)一步的工業(yè)化設(shè)計(jì),以達(dá)到更高的工業(yè)可靠性要求,并實(shí)現(xiàn)總線通信、自檢驗(yàn)等更多功能。

          本文作者創(chuàng)新點(diǎn):通過(guò)設(shè)計(jì)一種新的架構(gòu)體系,利用工業(yè)化的無(wú)線數(shù)傳模塊 ,將PLC控制與無(wú)線遙控結(jié)合起來(lái),使機(jī)械手控制系統(tǒng)能夠兼具二者的優(yōu)點(diǎn),降低了成本、滿足了控制系統(tǒng)穩(wěn)定性、兼容性及無(wú)線控制的要求。

          萬(wàn)能遙控器相關(guān)文章:萬(wàn)能遙控器代碼


          dc相關(guān)文章:dc是什么


          西門子plc相關(guān)文章:西門子plc視頻教程




          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();