イノッチの鉄道模型ブログ

日常生活の中のトピックスを気ままに書きます。鉄道模型製作や畑作業が中心です。
これまで製作した鉄道模型作品は、ホームページ「イノッチの鉄道模型」inoyoshio.jimdo.comに載せていますので、こちらもよかったらみてください。

Arduinoに関わってやっと兆しが‥

こんにちは。いつもお読みいただきありがとうございます。コロナ禍で体操/太極拳が休止しているあいだ、同時間に1人で山すそにある「スカイアリーナ(市営スポーツ施設)の駐車場で体操/太極拳をやっています。


この写真はきょうの南方向の様子で、今季一番の冷え込みの中、大阪市街のビル群の先に雪に覆われた生駒山麓!を彷彿させる光景に出会いました。冷気の中、約30分体操/太極拳をして往復1時間以上のウォーキングをして帰ってきます。


Arduinoによる自動運転のほうは、遅々として進みません。去年、おととしと何が違うのか、「がおう」さん「rtmrw」さんの貴重なアドバイスをいただきながら、基本に戻ろうと2年前に初めて電車が動いた当時のスケッチと比較しながら出直しました。



Arduino2系統自動運転 ①基本テスト
基本テスト、すなわち1回だけの往復運転にやっとたどり着きました。スタートボタンを押すと3秒後にスローアップスタートし、定速になったあと強制的に検出信号を入れるとスローダウンして停止して5秒後に逆走を始め、同様に検出信号を入れるとゆっくり止まる。写真右端にみえる手でタッチ操作しています。


ここまでくるのにいろいろありました。前もありましたがジャンパー線が接触不良(導通不動通が起きる)のが困ります。この線の場合、接触ピン(先端)のメッキ状態が関係しているらしい。ワイヤ線自身はくねくねさせても変わりません。とにかく、回路が確定したらハンダして接触部分を極力少なくすることですね。


このつぎにしたのは、スタートボタン1回で2往復運転をした後停止する、という試みをしましたがうまくいきませんでした。往復の繰り返しは電源を入れている限りつづくスケッチはできるのですが、設定回数n回になったら往復運転を止めなさいというスケッチが書けない。n回をカウントする関数があったとしてもArduinoは1つの流れ作業しかできないと思うのです。まだまだ素人です。ちなみに、昨年、一昨年のジオラマでは、1回の往復運転でした。
「if」文での疑問: i f (条件式 ) { 処理 }  の「処理」の中にもう1回、2回‥「if」文を入れられると想定して進めましたができず悩みました。「for」文は入るのに。割込み関数を使ってできるかは未検討です。


どちらにしても、まずジオラマ本体に組み込んで、高架線(阪急勝尾寺線)で順調に走行ができるかが次のステップです。


かなりデスクワーク(パソコン~Arduino~テスト線路)に時間が掛かったため、ジオラマ本体は新聞紙をこのようにかけてホコリ防止してました。やっと娘のこの部屋で作業する段階になりました。


後ろのスペースに制御ユニットを持ってきて配線作業の開始です。配線するのになるべく接触点をおさえたいのですが、ジオラマを分離可能にするため、コネクタを多く使わざるを得ません。


これは検出用リードスイッチ3組のコネクタです。


線路に供給する電源は、チェック用に単独でコネクター接続します。


ほかの検出線などは、ブレッドボードに直接抜き差しできるように多連ピンヘッダにはんだ付けしました。


図の勝尾寺線の運転成功後、早く渓谷線の作業計画を進めたいです。もともとArduino1個ではピン数が足りないので2個使うのですが、確実性を期すため、この図のような分担でやります。スタートボタンを同時に押すことで、delay(数値)の調整で2線同時運転も可能です。

×

非ログインユーザーとして返信する