見出し画像

バーコード端末(S0102-0)4

小規模なプログラムなので、先日の記事に続いてコーディングを進め、概ね終了しています。

早速、動作確認の状況を紹介しようと考えましたが、データベースの内容をDB Browser for SQLite で観察しているので、説明し難いと感じています。

先の記事で、「データの読み出しは、機器構成以外のRaspberry Pi などPythonが使えるPCで行います。」と表現したツールを作成してから、紹介しようと思います。

作ってみて以下のように感じています。

限られた範囲なら応用容易

当該ハードウェアと、タイトル画像の _sub1.py をそのまま使う前提で応用することを考えれば、同じくタイトル画像の jobu0 , main を加筆修正し、jobn を記述すだけで実現出来ると思います。

今回のソースを見るとjobn の内大きいものでも空行を含めて56行でした。

現場を支えるスタッフさんに使ってみてほしい

欧米に比べて、日本の中小工場の現場にはマイコンやRaspberry Pi などを使えるスタッフが少ないと聞いてます。

ベンダー任せでは自らの環境に見合ったシステムを構築し難い(費用、コミュニケーション面)ことから、例え小規模でも(ショボくても)現場のスタッフさんが自ら取り組むことが大切だと感じています。

プログラミングを初めて学ぶ方々が学習を中断する主な原因は以下の4つだろうと考えています。

1. 退屈な基礎的学習を継続できない。
2. 上の原因でもありますが、何に使うか(何を実現するか)目標の
   設定が出来ない。
3. 上の目標実現にハードウェアの知識が必要な場合、学習範囲が
   広すぎて挫折する。
4. 経験者のアドバイスが得られず参考書選定すらままならない。

私の経験からも漠然とプログラミングを学び続けられる期間はせいぜい1か月程度で、その後は具体的に何かを作る目標設定が出来ないと継続出来ずに挫折するようです。
その点、上の2~4をクリアした状態で取り組めるとしたら非常に大きなチャンスです。

2.仕事として他の工程(ライン)に応用すると言う目標がある。
3.バーコード端末と言うハード・ソフトが既にある。
4.実際にバーコード端末を作ったuPyCと会話できる。

そして、1番はこれらを元に、必要最小限の基礎的学習で成果が得られるはずです。
バーコード端末ごときでも、以下のようなプログラミングが必要です。

(1) バーコードを読出し、LCDやLEDに表示してブザーを鳴らし、
   データベースの参照・記録を行う手足の部分を記述します。
   (_sub1.py)
(2)そして、予定したルール(タイミング)で手足を動作させる仕組みを
   記述します。(itimer, job0, main)
(3)これらを駆使(呼び出し)して目的の仕事を実現します。(jobn)

初学者がこれら全てをゼロから学ぼうとすれば、おそらく挫折します。
バーコード端末応用では(1)(2)の実績をそのまま活用出来ます。これらのことは考えずに(3)に専念出来ます。
残る(3)は作業の流れを記述する作業で、仕掛品の進捗を記録する程度であれば、仕組みを整理、理解した後で数十行のプログラムを書くだけです。

それだけで、「自分にも出来た!」と言う貴重な体験をし、さらに他の工程(ライン)に応用出来るようになると思います。

興味が湧いたら、(1)(2)も自分なりに改良するなどして、少しづつ出来る範囲を広げれば良いと思います。さらに当該ハードウェアの仕組みを理解し、改良や機能追加を行うなどしながら自分のものにして行けば良いと思います。

どれ程参考になるか分かりませんが、そんな思いで続けています。


出来ればサポート頂けると、嬉しいです。 新しい基板や造形品を作る資金等に使いたいと思います。