網(wǎng)上很多講485的,搜出來(lái)一看,都一個(gè)模子復制出來(lái)的。不過(guò)硬件部分就那么接,這次詳解PLC程序。
首先準備兩本書(shū),FX1S1N2N2NC編程手冊(基本指令,步進(jìn)梯形指令,應用指令說(shuō)明書(shū)).pdf 和 FR-A500.pdf 。這兩本可以去
三菱電機官網(wǎng)下載最新的。前一本書(shū)重點(diǎn)看273頁(yè)往后,后一本書(shū)看4.2.41節?床幌氯(shū)的,可以去看
http://www.aitaobar.cn/read-gktid-144031.html 這個(gè)貼子里的三菱通訊基礎的視頻,快進(jìn)著(zhù)看還是很不錯的。
PLC編程用到通訊部分的指令如下圖:

重點(diǎn)為RS, ASCI, HEX, CCD
能過(guò)查變頻器手冊,定義通訊的格式:我定義的為數據長(cháng)度7位,偶校驗,停止位1位,無(wú)起始符結束符,9600BPS速率。
PLC通訊格式的設定跟據變頻器的設置,再寫(xiě)入到標志位里去,如下圖:

然后通過(guò)PLC說(shuō)明書(shū)知道,使用BD板,D8120的11,10,9這三位必須為110。這下一來(lái),我上面的參數對應到D8120里去為H0C86。
到這一步,就相當于快遞公司有了,地址寫(xiě)了,就差包裹了。
下面就是做包裹
通過(guò)RS定義包裹的大小
然后從變頻器的手冊上,找到包裹的具體形式:

然后填寫(xiě)相關(guān)部分的數據:
這個(gè)地方的數據形式還得看變頻器,畢竟PLC上就是定義一長(cháng)串的數據,把這串數據寫(xiě)滿(mǎn)就行了。
上面一張圖里面其實(shí)就是具體的數據形式了,不過(guò),三菱規定通訊時(shí)使用的是ASCII碼,那像ENQ的ASCII碼是多少就得查表了。

指令代碼也要查表

截圖了部分,都在上面我給的那一節書(shū)中。
下面以讓變頻器正反轉為例編段程序:
首先寫(xiě)入通訊格式,將下面跟隨的程序置為8位處理模式。8位處理模式是因為三菱廠(chǎng)商制定的通訊方式是8位的ASCII碼。ASCII碼是用8位的二進(jìn)制來(lái)表示一位十六進(jìn)制的數,如 H30表示十六進(jìn)制的0,H46表示十六進(jìn)制的F。我個(gè)人理解ASCI轉換其實(shí)就是把四位的形式轉成8位的形式,兩個(gè)同樣表示F,十六進(jìn)制里是1111; ASCII碼為01000110。

上面是初始化程序,M8161為8位/16位的切換開(kāi)關(guān),ON時(shí)為8位。ZRST是清除數據區
下面開(kāi)始定義緩沖區

D200開(kāi)始的十個(gè)寄存器的發(fā)送緩沖區,D600開(kāi)始的十個(gè)寄存器的接收緩沖區。這個(gè)就像快遞的中轉站,要發(fā)的包裹得統一到一個(gè)地方,等通知發(fā)貨的時(shí)候,一起發(fā)掉。接收同理。
填寫(xiě)數據形式,做包裹
其中用到的指令代碼截過(guò)來(lái)

我用X0正轉,X2停止,X4 反轉。

M100M102M104可以不用,我連著(zhù)觸摸屏做實(shí)驗的,單獨用PLC時(shí)不用。

D206,D207里面寫(xiě)入的數據根據指令說(shuō)明里的說(shuō)明來(lái)寫(xiě),00為停,02為正轉,04為反轉。對就的按鈕寫(xiě)對應的數據。因為D206在這三個(gè)指令里都是寫(xiě)0,所以放到公共賦值里去,偷點(diǎn)懶。

CCD校驗完D220放的ASCI碼的和,D221里放的是列偶校驗,這里只需要一個(gè)D220的值。
再把D220里的值進(jìn)行ASCI轉換。

M8122變1后,D200到D209的數據就開(kāi)始發(fā)送,發(fā)送完了后自動(dòng)復位。
一個(gè)簡(jiǎn)單的通訊程序也就寫(xiě)完了。
[ 此帖被wangk0在2012-09-04 16:53重新編輯 ]