見出し画像

controllino & nextion HMI(1)

contorollinoのハードウェアシリアルがどうなってんのかさっぱりわからない・ので、とりあえずソフトウェアシリアルで使えないのかと調べ始まる。


https://create.arduino.cc/projecthub/tsavascii/nextion-lcd-communicate-with-arduino-uno-188a44

ライブラリ  NexConfig.hの、

 #define  nexSerial Serial2

を、

#include  <SoftwareSerial.h>
extern SoftwareSerial HMISerial; #define  nexSerial HMISerial

に変更。HMISerialはなんでもいいのだろう。

arduinoスケッチは、

SoftwareSerial HMISerial(A0, A1); 

を追加。ピン番号はちなみに、A0,A1で試してみたけど無事controllinoと通信・操作出来ました。dualstateボタン6個でD0-D5をONしたところ。

画像1

controllinoピン番号の割付、D0-D5は当然0-5だと思ってたらarduinoでいうところの4,5,6,7,8,9だった。

最初D0、D1(つまり0,1)で試してみたけど、最初はコンパイル通って書き込みも出来たんだけど、2回目から書き込み始まったまま終わらない。TXランプが点灯したまま。プログラムでシリアルのリスニング始まると書き込みでエラー出るみたいな記述発見。リセットしたりPCの電源入り切りして、ソフトウェアシリアルのポートをA0,A1にしたらいきなり通った。

24ボルト絶縁入力持ってるarduinoはここの製品とindustruino(こちらはメカリレー無)とRAGGED CIRCUITの製品(HPではUSとカナダにしか発送しないと書いてある)くらいしか無い。RSで売ってるのがあるけど、普通の三菱シーケンサーより高いのでは個人的に魅力も需要もない。

controllino miniだけど今の為替レートで結局1台17000円強で手に入った(2台まとめて買った1台あたりの値段、送料と国内消費税とDHLの立替手数料1000円も含んで)miniではいまひとつIOが足りないのだけど、これでシリアルHMIが使えるならと思うものの、やはり充電池バックアップSRAMを持つ、一般シーケンサーには機能で遠く及ばずな感じ。EEPROMやFLASHに頼らず不揮発設定使えないってのは大きい。使えるんだろうけど、今の私じゃ無理。たとえば、電源切る前のスイッチの状態を記憶しておくみたいな世界。これがAVRにはなかなか出来ない。(10万回程度で死んでしまうのは出来るうちに入らない)

この部分がクリアできれば国産PLC要らんよなと思う。しかも、ラダーとは言わないけどあれくらい、直感的にプログラミング出来ないとな。FL1FとかZENとかあるけど、あれらはシリアルHMIなんか使えないもの。産業用タッチパネルはあほみたいに高いのだよ。ソフトもハードも。

次はnexttionの画面作ってテスト。その次は4d systemsのgen4パネルでテスト。今日はここまで。

組込装置のPLCコスト削り半分、面白いの半分で取り組んでるけど、本気で産業用に使おうなんて動きが日本語圏で殆ど無い(あってもやはりあほほど高い)ので、英語とかよくわからん第三言語と戦ってます。

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
3
気の利いたハンドルネームすら思いつかない