見出し画像

「2進数データから直接スイッチを操作できるパターン」で制御を簡単に -その1-

 10進数入力・2進数出力するエンコーダの2進数データ出力から直接スイッチを操作することができます。例えば、7桁の2進数の場合、10進数3~127の内、1値入力により、1種類から21種類のスイッチを単一・複数同時にONできます。


はじめに

 はじめまして、私は「線路直結式多路多パターンスイッチ制御システム」を考案し、特許を取得して10年になります。

 まずは、noteに記事を掲載できるようにしていただきました特許庁に感謝を申し上げます。この十年間、様々に紹介させていただいたり、指導などをお願いしたりしましたが、お断りのメールを頂けただけでもありがたい事でした。多くの場合は、返信をいただくことができませんでした。

 この仕組みは、2つのスイッチがONになることでランプが点灯することから発想し、フォトリレーとArduino(Scrattino3)により制御可能なものです。ただ、もっと簡単に再現できるものがあるかもしれませんので、今回、記事を書かせていただき、これを公開することで、皆さまのご指導を賜りたいと思いました。

よろしくお願い申し上げます。

1.概要

1-1.説明にあたって(用語等)

 さて、ここでのエンコーダは、組合せ回路による10進数入力を2進数出力するものです。
 たとえば、10進数側の入力には、A0~A7などの端子を設け、2進数側の出力には、Z2~Z0などの端子を設け、このうち10進数の「6」を示すA6が「1」の場合、2進数へは「110」と変換し「Z2=1、Z1=1、Z0=0」になるように作動するものです。

エンコーダ真理値表

 このスイッチ制御システムでは、上記エンコーダ含めて回路で組んだ場合に、下記のイメージとなります。実際には、この部分は、バスを除いてパソコンやボードコンピュータを使用することになります。

 エンコーダの出力端子にバスを付け、No1~No3の線路を設け、2進数でNo1=「001」(1桁目)、No2=「010」(2桁目)、No3=「100」(3桁目)と重みづけをし、10進数で「6」とした場合には、No2とNo3のバスも「1」となるので「110」となります。

スイッチ制御システム イメージ

 2進数7桁の場合、10進数3~127までの1値入力により、1種類から21種類のスイッチを単一・複数同時にONできるようになり、このバスに物理スイッチを接続したものが、このスイッチ制御システムのイメージとなります。以降の説明では、この2進数7桁のもので説明していきます。

 回路は、フォトリレー主体で「電源があってスイッチONでランプが点灯する」ことが分かれば理解できると思います。

 フォトリレーとは、半導体リレーで、下記図①でスイッチONすると、②フォトリレーの入力側のLEDが点灯することで、③フォトリレーの出力側のスイッチがONとなり、④結果、ランプを点灯させることができます。
 半導体であることから、小型で、長寿命、低電流駆動、高速応答のメリットがあります。

フォトリレー 動作イメージ

 ただ、「バスに物理スイッチを接続して・・」につきましては、2進数をそのままパターン表として制御に使用しておりますので、このパターンから説明させていただきます。

 これにより、イルミネーションなどの制御ができます。そして、-その2-の後半途中から有償となりますが、Scrattino3でのプログラムと、詳しい原理を紹介させていただきます。

1-2.制御システム全般について

 制御システムといいますと、一般的には、工場などの装置を制御するものであります。それらは、シーケンス制御などを用いてPLC(プログラム・ロジック・コントローラ)により機械を作動させております。近年では、自動運転など更に高度に発展して、我々の手におえないイメージであります。

 イルミネーションの場合でも、舞台照明装置を利用するのが一般的で、DMX512という通信プロトコルを使用して点滅制御をしております。コンサートなどでも、TV画面を舞台全面に大きくしたり、光が走ったりと舞台照明と同じようなことをしておりますので、これらが同じ機材を使用されることは納得できます。そして、専門の会社でないと難しいことも理解できます。

 我々がクリスマスツリーなどに飾る、一個ずつ市販されている単体イルミネーションは、専用の論理回路ICなどを用いて点滅させており、スライダースイッチの切り替えで点灯や点滅を変えることができますが、それらの単体イルミネーションライト複数本をプログラミングで制御することはできません。

 アメリカなどでは、敷地全体にイルミネーションしているユーチューブを見ますが、これらもプログラミングで制御しているようには見えません。ただ、すごいイルミネーションのものもあったりしますが、廉価や簡単な操作で点灯できるものでしたら当然、動画内で大々的に宣伝しているはずですが、されていないところから察するに、舞台照明装置、もしくはその部類のものを使われているのではないかと、想像します。

 ここまできますと、専門家が施設する物と、単体で市販され、人の手で飾っている物との「中間が抜けている」ことに気づかれたと思います。それは、複数本のイルミネーションライト(50球)などを順番に点滅させたり、3本ずつ交互に点滅させたり、全部点灯させたりを、簡単にプログラミングで点灯できるものです。

1-3.「制御システムをパターンで簡単に」できる例

まずは、下記のユーチューブのイルミネーションをご覧ください。
ユーチューブ ショート動画

ユーチューブ

 これは、Arduino Uno(4,000円前後のボードコンピュータ)に、TLC5940のICを接続することで制御しております。このTLC5940とは、16個のLEDをPWM(明るさを変えれる)で点灯することができるもので、IC2個連結することで32個を点滅できる定番のICです。

 このユーチューブでは、これを利用して、それもTLC5940の7端子だけを使用して、物理スイッチ21種類で点灯しております。(TLC5940には、16端子ありますので、実際には2系統とることが可能です。)

 この動画では、12VのLEDテープライトや、市販の4.5VのLEDイルミネーションライト(50球)などを混在させ、ライト40本以上をコントロールしております。IC単体のTLC5940では駆動不能ですが、この制御システムでは、物理スイッチ毎に1つのライトの電源をON/OFF制御しますので、12Vや4.5Vだけでなく、ライトに必要な電源をそれぞれ利用することが出来ます。

 そして、スイッチ部分には、電流制限機能回路を内蔵したフォトリレーを使用して、摩損と突入電流に対処しております。(ツリーなど少しずつ増やしておりますが、冬季間使用で、古いものでは7~8年使用し続けている物もあります)

 Arduino IDEだけでなく、Scratchプログラミングでも同じようなことができます。

1-4.パターンとは(概要)

 このパターンとは、物理的な単一のモーメンタリ型スイッチを選択できたり、それら単一の物理スイッチ複数を組み合わせて選択できたり、するものです。

 そして、単一と、その組合せを示す全てのパターンは、重複することなく10進数制御値(以降、制御値)で表すことが出来ます。これにより、制御値と点灯時間を順次繰り返すことでイルミネーションを点灯させることができます。

 物理的な単一のモーメンタリ型スイッチは、下記表のようにA1(3)~A21(96)と21種類のパターンにより、単一の物理スイッチとして選択することができます。Axxは物理スイッチの種類を示し、()内の数値は、制御値で、この数値により制御していきます。

単体物理スイッチのパターン一覧.

1-5.二進法に従ったパターンについて

  2進数7桁の場合には、No1=「0000001」、No2=「0000010」、No3=「0000100」、No4=「0001000」、No5=「0010000」、No6=「0100000」、No7=「1000000」となります。
 
 表題を縦にしてみますと、No1が2進数の1桁目で、No7が7桁目です。下記のA1の場合ですと、を1に見立てていただくと「11」ですので、1が立っている赤枠の数字をたしていただくと10進数に変換できます。この場合、制御値は2+1=3となります。

表題の見方

1-6.従来の仕組みとの違いについて

 イルミネーションの点灯を変える場合には、現行の仕組みでは論理回路を変更したり、DMX512では、アドレスを変更したりするのですが、このスイッチ制御システムでは、プログラムの制御値を変えることで、当該物理スイッチ単一もしくは複数をONにして点灯させます。

 プログラミングの仕方も大きく異なります。アニメ動画は、紙に描いた絵をパラパラとめくると、動いているように見えます。

 これと同じイメージで、制御値によりパターンを次々と変えていくことになります。アニメ動画は1秒間に24枚など一定の時間で動かしますが、A1のパターン(制御値)を点灯時間3秒などとし、これを積み重ねていくことになります。(用途によっては、アニメ動画のように1秒間に24枚などと、プログラミングすることは可能と思います)

 施設するにあたっては、DMX512、このスイッチ制御システムのどちらも、ディジーチェーンしますが、DMX512では、1スロットごとに場所と色、動作等を示すアドレスを、512スロット分を1つのDMXデータとして非同期のシリアル伝送規格により伝送し、ライト自身が受信したデータより当該アドレスを拾って、自分のであれば点灯します。

 このスイッチ制御システムでは、制御線(:バス)から流れた電気により直接、当該物理スイッチがONして、物理スイッチに接続されたライトを点灯させるので、受信回路も無くシンプルな仕組みです。

 そのため、制御値だけでなく単純な回路によっても標準化しやすいものになっております。そして、小型にでき、切り替えレスポンスもフォトリレーの速さが基準になります。

まとめ

 ユーチューブで紹介したイルミネーションと同じことをするために、シーケンス制御を用いたPLCや、舞台照明のシステム(DMX512)、または類似した廉価な装置などを用いても構いませんが、時間や費用との相談になると思います。

 シーケンス制御などは、確かに高機能ですが、このスイッチ制御システムのパターンにより点灯した場合には、ご自身の持っているプログラミングノウハウと、Arduino IDEとTLC5940用のライブラリーにより制御できてしまいます。

 そして、Scrattino3とArduinoなどのボードコンピュータがあれば、イルミネーションなどが、小学校の授業で使われるScratchで、点灯できるようになります。

 詳しくは、-その2-から説明させていただきます。

よろしければサポートお願いします! 様々に、検証が必要となりますので、ご協力よろしくお願いいたします。