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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 用51單片機(jī)做簡(jiǎn)易PLC

          用51單片機(jī)做簡(jiǎn)易PLC

          作者: 時(shí)間:2016-12-02 來(lái)源:網(wǎng)絡(luò) 收藏
          最近在51hei單片機(jī)論壇上下載了一個(gè)PMW-HEX的軟件,這個(gè)軟件可以將三菱PLC編程軟件編寫(xiě)的梯形圖轉(zhuǎn)換成HEX文件,再將這個(gè)HEX文件燒錄到51 單片機(jī)上,這樣51單片機(jī)就有了梯形圖所編程的功能了。我覺(jué)得蠻有意思的,雖然該軟件并不能兼容PLC的所有功能,甚至說(shuō)很多功能不能兼容,但基本的一些指令和少量的軟元件已經(jīng)足夠做一些簡(jiǎn)單控制功能了?;谶@個(gè)我就想著自己動(dòng)手做一個(gè)4入4出的簡(jiǎn)易PLC來(lái)玩玩吧,PMW-HEX的下載地址是:http://www.51hei.com/bbs/dpj-19820-1.html 想了就動(dòng)手吧,否則以前學(xué)的一些電子知識(shí)就要荒廢了。
          因?yàn)槭稚现挥蠥T89S52的單片機(jī),那么就拿這款單片機(jī)來(lái)設(shè)計(jì)電路吧。
          第一步,先設(shè)計(jì)供電電路。按三菱PLC的模式,輸入端的公共(COM)是DC24V的地(GND),所以就把DC24V電源作為供電電源。單片機(jī)需要5V 供電,手上的繼電器是DC12V的供電,所以這個(gè)供電電路就是24V轉(zhuǎn)成12V再轉(zhuǎn)成5V。因?yàn)橹皇菧y(cè)試的用途所以僅用最簡(jiǎn)單的轉(zhuǎn)換方法(目前還算可以用吧)。


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

          第二步,設(shè)計(jì)單片機(jī)的最小系統(tǒng)。也就是用12M晶振配合諧振電容(30P)電路和上電自動(dòng)復(fù)位電路構(gòu)成。


          第三步,設(shè)計(jì)開(kāi)關(guān)量輸入電路。這里將仿效三菱PLC的輸入,用DC24V的GND作公共端,經(jīng)開(kāi)關(guān)返回。這樣就需要使用光耦521-4將DC24V的信號(hào)與單片機(jī)輸入端的5V信號(hào)進(jìn)行隔離轉(zhuǎn)換。


          第四步,設(shè)計(jì)輸出到繼電器的電路。由于我使用的是DC12V的繼電器,所以也用了光耦521-4進(jìn)行隔離轉(zhuǎn)換,然后驅(qū)動(dòng)三極管(9013),用三極管來(lái)驅(qū)動(dòng)繼電器。


          到此電路原理圖已經(jīng)完成,將相應(yīng)元件插到萬(wàn)能板上,使用40W尖嘴烙鐵配合行云流水的焊法,板子一氣呵成(其實(shí)焊的很難看)。接下來(lái)就開(kāi)始調(diào)試,用三菱編程軟件編寫(xiě)一個(gè)簡(jiǎn)單輸入輸出程序,經(jīng)PMW-HEX軟件轉(zhuǎn)換成HEX文件,燒進(jìn)AT89S52單片機(jī),將單片機(jī)插入IC座,通電測(cè)試一切都正常。這個(gè)自己做的PLC就算已經(jīng)完成了,高興啊,終于有一個(gè)小PLC了。


          其實(shí)做這個(gè)東西僅僅是為了自?shī)首詷?lè),但這個(gè)過(guò)程卻能讓人興奮,當(dāng)一個(gè)東西做出來(lái)時(shí)那種成就感真的很爽,呵呵!




          關(guān)鍵詞: 51單片機(jī)簡(jiǎn)易PL

          評(píng)論


          技術(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); })();