本項目操作系統(tǒng)是ubuntu20.04,應用軟件是Qt,都是開源,因為是浙江傳統(tǒng)行業(yè),什么都要便宜嘛。 ( \: M9 z" a( S) s! G9 v8 l( H
win系統(tǒng)修改下配置就可以了,到時我另開一篇。 + x* w$ `+ w' Y/ G
S7通訊是HMI、TIA軟件和PLC的通訊方式。
0 ]* R( I4 o4 u7 Q, S U本項目涉及的通訊有:西門子S7通訊、數(shù)據(jù)庫sql2012通訊、4個tcp客戶端、10個ModbusTcp客戶端。
7 a+ g$ d2 L0 R6 R0 s9 s* h& s! E+ ?2 Q6 {1 _- x
本篇先開始概況性寫S7通訊,下幾篇從配置開始寫具體的操作,有不少注意事項。
* w5 G! f: R& R$ M) w& g% s1 Y9 B. N( e( C
簡單的上個S7通訊線程的代碼截圖,至于界面,比較敏感,就不公開發(fā)了。
0 @. B0 _' R$ Q$ J2 {: u以下是讀取DB1數(shù)據(jù),從240地址開始,連續(xù)讀取8個雙字數(shù)據(jù): 以下是連續(xù)讀取M區(qū)數(shù)據(jù),從M540開始: 以下是寫入M區(qū)的位數(shù)據(jù),bitset函數(shù)按位功能,實用: $ W" K; V' K! F! W
以下的讀取浮點數(shù),需要注意C++和PLC數(shù)據(jù)是有大小端的,要注意轉換,轉換函數(shù)自己寫: & ?) A1 ]; P3 f+ |1 N. [* E
另外,敝司項目不多,購買西門子PLC有點高,不知是否有人要一起拼的,量大優(yōu)惠嘛。 # O5 X3 s5 I' k+ h
|