こんにちは
一般的なArduinoボードのプログラミングの分野における別のプロジェクトを紹介したいと思います。
まず、少し歴史。 コントローラーが登場した瞬間から、コントローラーを操作する原理の開発は、抽象化の道を進んでいます。 最初の段階は、機械コードで直接プログラミングすることでした。 プログラミングは複雑で時間がかかり、非常に具体的な考え方が必要でした。 したがって、プログラマーはほとんどいませんでした。
しかし、人間は怠zyな生き物であり、怠は、ご存知のように、進歩のエンジンです。 彼らは最初の抽象化レベル-アセンブラーを思いつきました。 プログラムの作成がより簡単で楽しくなりました。 プログラマーの数が増えました。 しかし、それでも、アセンブラーはマシンコードとそれほど違いはありませんでした。
したがって、次のレベルの抽象化が登場しました。 高レベル言語。 これらの言語の主な目標は、可能な限り人間に近い言語でマシンに望むものを機械に説明する機会でした。 これにより、特定度の低いウェアハウスを持つ人々がプログラミングを行うことができました。 したがって、高水準言語の開発に伴い、プログラマーの数が増加し、それに応じて作成した有用なプログラムの数が増加しました。
FLProgプロジェクトは、「マイクロコントローラーをプログラムするために、コンピューターはプログラミング言語を知る必要がない」というかなり大胆な声明で新しいレベルの抽象化を提供します。
声明は大胆すぎるように見えるかもしれませんが、それは可能であり、コンピューターに隣接する領域で既に証明されています。 これは、産業オートメーション制御システムのプログラミング分野です。 ほぼ最初から、産業用コントローラーのメーカーはこの方法を採用しました。 現在、主要メーカーのプログラミング環境の標準はFBDとLADです。 実際のところ、それ自体は言語ではありません。 むしろ、基本または論理回路を描くためのグラフィカル環境です。
このアプローチは、電気技術者や電子技術者向けのACSシステムの開発に簡単に参入するために非常に便利であることが判明しました。 プラント設計を開発する場合、これらのプラントの動作をコントローラの作業アルゴリズムに簡単に結び付けることができます。 また、既存のメンテナンススタッフがACSシステムの動作を簡単に確認して問題を発見できる場合は、これらの施設を施設で維持することをお勧めします。 そして同時に、「些細なこと」ごとにプログラマーを「センター」から呼び出す必要はありません。 そして、このアプローチは報われました。 今日、ほとんどすべての産業オートメーションシステムは、このような開発ツールを使用して作成されています。
シーメンス、ABB、シュナイダー、およびほぼすべてのメーカーは、このような開発環境を持っています。 しかし、問題があります。 すべてがコントローラーに関連付けられています。 そして、これらのコントローラーの価格は手頃な価格とは言い難いです。
そして、Arduinoボードが登場しました。 安価で、幅広い周辺機器と拡張シールド付き。 ディスプレイ、センサー、その他のデバイスと互換性のあるインターフェースを備えています。 コンピューターに直接接続する機能を使用して、EhernetネットワークとWiFIに接続します。
これらのボードは、わが国が常に豊かであり、豊かである日曜大工やクリビンに理想的に適しています。 しかし、いつものようにですが。 これらのボードはCでプログラムされています。非常にまっすぐな腕が適切な場所から伸びているこれらの最も賢い人々のほとんどにとって、これは中国語のアルファベットです。 IF、FOR、Case、Voidなどの複雑な回路の描画、アセンブル、デバッグ、実行が考えられます。 それは彼らのためではありません。 もちろん、例を使ってインターネット上の指示を読んだり、しばらく遊んだり、LEDを点滅させることができます。 しかし、より深刻なアプリケーションには、言語の詳細な研究が必要です。 なぜこれが必要なのですか? 彼らはプロのプログラマーになるつもりはありません。 それらは異なるパスを持っています。 彼らは何かを思いついた。 はい、マイクロコントローラを使用して組み立てる方が簡単で美しいですが、言語の学習に数か月を費やしてプログラマーになりますか? いいえ、もちろんです。 古い方法で収集されますが、もちろんよりシンプルですが、その分野で収集されます。
FLProgプロジェクトのアイデアは、産業用プログラミングの原理とArduinoの安価さと便利さを組み合わせることです。 その結果、電気に精通した人なら誰でも自分のarduinoプロジェクトを作成できるツールになるはずです。
次の投稿では、プロジェクト、その開発、および展望について詳しく説明します。