1樓:匿名使用者
plc與上位機進行通訊,採用blandc編寫主機與plc的通訊程式,必須對com1口進行初始化,波特率為9600bps,奇偶校驗位採用偶校驗,七位有效資料。
當計算機接收到來自plc的應答字元ack後,就可以進入資料通訊了。
計算機可對plc內各軟裝置進行讀、寫和強制on/off操作。除開plc的計時器和計數器的設定值採用常數時,以及檔案暫存器內的資料,fx2n系列plc的所有開關量輸入、輸出以及各軟體裝置對計算機都是透明的。
為了保證主機與plc的通訊準確無誤,上位機也必須按通訊協議進行和校驗。如接收的資訊有誤,則重新讀取。如重複3次仍不行,則顯示錯誤資訊。
使用c語言實現以上程式設計,主機還可向plc寫資料,進行單點的強近置位和復位。
在利用外部裝置與可程式設計控制器之間進行通訊前,必須首先規定一些引數,如資料長度,奇偶校驗、停止位以及波特率等,即通訊格式。
通訊格式是通過一個四位的16進位制數而設定,這裡設定為h6880,其含義是資料長度為7位,終結符為7位,奇偶校驗為無,控制線為rs232介面,停止位為1位,和校驗為自動新增,波特率為9600bps,協議為專用協議,標題無,傳輸控制協議為協議格式1。
通訊格式是在plc中首先將其設定好的。其中協議格式的通訊格式依次規定了控制**、站號、pc號、命令、訊息等待以及和校驗**等。在fx系列程式設計控制器中,站號是通過特殊暫存器d8121來設定的。
設定範圍是從00h到0fh。
實驗臺中由於上位機只和一個plc氣動實驗臺通訊,所以站號為00h。pc號是a系列melsecnet(ii)或melsecnet/b用來確定可程式設計控制器cpu的數字。fx系列的pc號為ffh,由兩位ascii字元來代表,即“ff”。
命令用來指定要求的操作(如讀,寫),在此控制軟體中所使用的向plc傳送的主要指令有:
批量讀出位元件br指令;批量寫入位元件bw指令;強制plc執行(run)rr指令;強制plc停止(stop)rs指令。
訊息等待是一段計算機要求的延遲時間,以實現在傳送和接受狀態間的轉換。和校驗**用來確定訊息中的資料沒有受到破壞。它是通過加上和校驗區域中的ascii字元的16進位制值計算得到的。
2樓:達夫的秋
4~20ma訊號首先通過模擬量輸入模組採集到plc內部,再用組太軟體來監視plc對應地址就可以了。做的好點呢,就在plc內部進行下轉換,加數字量再變成4~20的對應關係,這樣就可以在組太上看成電流形式
組太軟體不難,拿了東西,自己搗鼓搗鼓就行了
與上位機通訊的話,看你用什麼協議,參考協議的說明,編好程式,用通訊線監視下就知道問題在**,不是很難
求大神,上位機與plc是怎麼通訊的,原理是什麼
3樓:濤哥灬轉
首先要知道,什麼是上位機,a控制b,那a就是上位機,a傳送協議內規定的一串資料,b接收到專確認資料沒錯再返回其屬對應的資料。相對應的b就是下位機,plc常見的上位機有pc,hmi,其他plc,與pc通訊,常見軟體組態王,力控,設定好相應的plc就好啦,不難,hmi也是如此,設定好plc型號就好啦,相對來說與plc通訊較難需要自己根據兩個plc都支援的協議編寫對應的程式。西門子300 400系列的profibus dp 還有modbus通訊,plc一般是485通訊,也有乙太網
4樓:匿名使用者
上位機給plc傳送固定格式的指令就可以通訊了
通過工業乙太網PLC怎么與上位機進行通訊
300的直接採用程式設計口就可以和上位機通訊,312只能用mpi其他的都可以採用dp上位機需要配置dp卡。300的訂貨號,cp343的訂貨號都多少,直接連線的話應該不是很難 相諮詢個關於工業乙太網的問題,我做的畢業設計裡要求煤礦井下下位機和地上的上位機用工業乙太網進行通訊 工業乙太網跟地面的乙太網是...
在進行微控制器與上位機進行Modbus協議通訊時,沒有成功,提示是「寫通訊超時」,哪位大俠知道這是什麼情況
modbus寫命令分為5號單寫位,15號多個位寫,6號單暫存器,16號多暫存器寫。如果讀命令響應正確,但是寫命令超時,很有可能是下位機僅支援單獨的位或暫存器寫操作,不支援多暫存器操作。 瘋狂的門 上位機上不知道你用的是不是modbus除錯助手還是自己編寫的除錯軟體,如果是除錯助手的話那就是你的下位機...
緊急請教高手 S7 PLC與上位機之間可以採用TCP IP,Socket通訊嗎
沃亭晚士嫣 是可以的,但我想估計全中國沒有幾個人做過,而且可能沒有多少人知道,因為很少有人知道做那個的資料在哪,但是是可以做到的,用那個的好處是完全不需要在上位機花錢了。直接基於tcp ip程式設計。 圭仁丘妍 直接購買支援tcp ip通訊模組安裝在plc上,進行簡單組態就可以了。 柏蘭雀俏 我的上...