本項目操作系統(tǒng)是ubuntu20.04,應(yīng)用軟件是Qt,都是開源,因為是浙江傳統(tǒng)行業(yè),什么都要便宜嘛。
+ b7 H, d- ^/ B. L% f) E9 I$ Zwin系統(tǒng)修改下配置就可以了,到時我另開一篇。
: N" k3 W l) V) w' C0 h3 l: s gS7通訊是HMI、TIA軟件和PLC的通訊方式。
% A% k+ A/ B* u6 F9 s. |8 T本項目涉及的通訊有:西門子S7通訊、數(shù)據(jù)庫sql2012通訊、4個tcp客戶端、10個ModbusTcp客戶端。 * U2 A/ k4 T% g& s. I Q
1 |; E1 T3 }3 p4 U3 }8 M. I
本篇先開始概況性寫S7通訊,下幾篇從配置開始寫具體的操作,有不少注意事項。
8 [2 K4 t# y5 T! e
) P) \+ K! G1 b5 w2 B
簡單的上個S7通訊線程的代碼截圖,至于界面,比較敏感,就不公開發(fā)了。 8 J' r4 Q1 w# g3 f* y/ e! O
以下是讀取DB1數(shù)據(jù),從240地址開始,連續(xù)讀取8個雙字?jǐn)?shù)據(jù): 以下是連續(xù)讀取M區(qū)數(shù)據(jù),從M540開始: 以下是寫入M區(qū)的位數(shù)據(jù),bitset函數(shù)按位功能,實用: ) ~# H9 h& K/ O* k0 I( A4 H
以下的讀取浮點數(shù),需要注意C++和PLC數(shù)據(jù)是有大小端的,要注意轉(zhuǎn)換,轉(zhuǎn)換函數(shù)自己寫:
, K* O3 G7 p) }* p% O& ^7 x# l另外,敝司項目不多,購買西門子PLC有點高,不知是否有人要一起拼的,量大優(yōu)惠嘛。
% R8 S! \6 G, t) S9 L4 F( @ |