FLProgは、代替のArduinoプログラミング環境です。 プロジェクトの説明



以前の投稿で、FLProgプロジェクトの登場の背景について話しました。 さて、今日のプロジェクトとその状況についてお話ししたいと思います。

このプロジェクトの主な目標は、Arduinoボードユーザーとのプログラミングに不慣れな人々を含めることです。 これは、産業用コントローラのメーカーによって長年にわたって蓄積されてきた産業用プログラミングの経験のおかげで可能になりました。

プロジェクトは2つの部分で構成されています。 最初の部分は、FLProgデスクトップアプリケーションです。これは、Arduinoボード用のグラフィカルプログラミング環境です。 第二に、これはFLProg.ruサイトで、プログラムのユーザーコミュニティのメンバーが互いに通信し、最新のプロジェクトニュースを見つけ、プログラムの最新バージョンをダウンロードし、アプリケーションの操作に関する必要な情報を見つけることができます。



順番に始めましょう。

FLProgプログラムを使用すると、産業用コントローラのプログラミング分野の標準であるグラフィック言語FBDおよびLADを使用して、Arduinoボードのファームウェアを作成できます。

FBD言語の説明
FBD(Function Block Diagram)は、IEC 61131-3標準のグラフィカルプログラミング言語です。 プログラムは、上から下に順番に実行される回路のリストから形成されます。 プログラミング時には、ライブラリブロックのセットが使用されます。 ブロック(要素)は、サブプログラム、機能、または機能ブロック(AND、OR、NOT、トリガー、タイマー、カウンター、アナログ信号処理ブロック、数学演算など)です。 個々のチェーンは、個々の要素をグラフィカルに構成した表現です。 次のブロックはユニットの出力に接続され、回路を形成します。 チェーン内では、ブロックは接続の順序で厳密に実行されます。 回路計算の結果は、内部変数に書き込まれるか、コントローラー出力に送られます。



LAD言語の説明
ラダー図(LD、LAD、RKS)-リレー(ラダー)ロジックの言語。 この言語の構文は、リレー技術に基づいて論理回路を置き換えるのに便利です。 この言語は、工業企業で働く自動化エンジニアを対象としています。 コントローラのロジックの直観的なインターフェイスを提供し、実際のプログラミングおよび試運転タスクだけでなく、コントローラに接続された機器の迅速なトラブルシューティングも容易にします。 リレーロジックの言語のプログラムには、電気技術者にとって視覚的で直感的なグラフィカルインターフェイスがあり、閉じた接点と開いた接点を持つ電気回路のような論理操作を表します。 この回路の電流の流れまたは欠如は、論理演算の結果に対応します(true-電流が流れる場合、false-電流が流れない場合)。 言語の主な要素は連絡先であり、これは一対のリレー連絡先またはボタンに比can的にたとえることができます。 連絡先のペアは論理変数で識別され、このペアの状態は変数の値で識別されます。 電気回路の通常閉および通常開ボタンと比較できる通常閉および通常開接点要素があります。



これらの言語の古典的な機能を少し拡張し、外部デバイスを操作する機能ブロックを追加しました。 これらは、それらと連携するように設計されたライブラリのラッパーです。

FLProgのプロジェクトは、一般的な回路の完全なモジュールがそれぞれ組み立てられたボードのコレクションです。 便宜上、各ボードには名前とコメントがあります。 また、各ボードを最小化して(作業の終了時に作業領域のスペースを節約するため)、展開することができます。 ボード名の赤いインジケータは、回路基板にエラーがあることを示します。



FBD言語モードのプログラムウィンドウのタイプ





LAD言語モードでのプログラムウィンドウの表示





各ボードの回路は、コントローラーのロジックに従って機能ブロックから組み立てられます。 ほとんどの機能ブロックには設定機能があり、この特定の場合の要件に応じて機能を設定できます。







また、各機能ブロックには詳細な説明があり、いつでも利用でき、その作業と設定を理解するのに役立ちます。







プログラムを使用する場合、ユーザーはコードを記述したり、入力と出力の使用を制御したり、名前の一意性とデータ型の一貫性を検証したりする必要はありません。 プログラムはこれをすべて監視します。 また、プロジェクト全体の正確性をチェックし、エラーの存在を示します。

外部デバイスを操作するには、いくつかの補助ツールを作成しました。 これは、リアルタイムクロックを初期化および設定するためのツール、OneWireおよびI2Cバス上のデバイスのアドレスを読み取るためのツール、およびIRリモートコントロールでボタンコードを読み取りおよび保存するためのツールです。 すべての定義済みデータをファイルとして保存し、その後プログラムで使用できます。

FBD言語に現在存在する機能ブロックのリスト

基本的な要素



[XOR]

[および]

[または]

[バウンス]



特殊ブロック



[スケール]



トリガー



[SR]

[TT]

[RS]

[Rtrig]



タイマー



[発電機]

[タイマー]



カウンター



[カウンター]

[スピードカウンター]



数学



[合計(+)]

[MUL(*)]

[DIV(/)]

[SUB(-)]



代数



[罪]

[COS]

[タン]

[ABS]

[SQ]

[SQRT]

[MIN]

[MAX]

[POW]

[ランダム]



比較



[コンパレータ]



コム-ポート



送る

送信変数

ReceiveVariable



スイッチ



[スイッチ]

[MUX]

[DMS]



モーター



サーボモーター

ステップモーター



リアルタイムクロック



[アラーム]

[GetTime]

[SetTime]



ディスプレイ



チップND44780に表示

チップにバックライトを表示D44780I2C

7セグメントインジケーターのデコード単位





行追加



センサー



[超音波HC-SR04]

[DHT11、DHT21、DHT22]

[DS18x2x]

[IR Ressive]

[BMP-085]



SDカード



SDカードへの変数の書き込み

SDカードからファイルをアップロード



型変換



文字列変換

フロートを整数に変換



拡張チップ



ターミナルエキスパンダー74HC595



ビット演算



エンコーダー

デコーダー

読み取りビット

ビットレコード



その他



マトリックスキーボード



LAD言語に現在存在する機能ブロックのリスト

ベースブロック



連絡先

リール

バウンス保護

フロントエッジの強調表示



特殊リレー



双安定リレー

タイムリレー

発電機

比較リレー



代数





コス

タン

ABS

マックス

MIN

SQ

SQRT

捕虜

ランダム



アナログブロック



スケーリング

数学

カウンター

アナログスイッチ

マルチツーワンスイッチ

1対多スイッチ

コントローラーのアナログ入力

コントローラーのアナログ出力

アナログ入力

アナログコネクタ出力

スピードカウンター



コンポート



ComPortへの転送

ComPortを介して変数を渡す

ComPortを介した変数の受信



モーター



サーボモーター

ステッピングモーター



リアルタイムクロック



データを取得する

目覚まし時計

時間設定



ディスプレイ



チップHD44780上のディスプレイ

HD4480 I2Cディスプレイバックライトコントロールユニット

7セグメントインジケーターのデコード単位





行追加



センサー



超音波距離計HC-SR04

温湿度センサーDHT11(DHT21、DHT22)

DS18x2x温度センサー

IR Ressive

BMP-085



SDカード



SDカードへの変数の書き込み

SDカードからファイルをアップロード



型変換



行変換

フロートを整数に変換



拡張チップ



ターミナルエキスパンダー74HC595



ビット演算



エンコーダー

デコーダー

読み取りビット

ビットレコード



その他



マトリックスキーボード。



現在プロジェクトで使用されている機器のリスト。

リアルタイムクロック



DS1302

DS1307

DS3231



センサー



温湿度センサーDHT11

温湿度センサーDHT21

温湿度センサーDHT22

超音波距離計HC-SR04

DS18B20温度センサー

DS18S20温度センサー

DS1822温度センサー

圧力センサーBMP085

モーションセンサー(PIRモーションセンサー)HC-SR501

MQ2ガスセンサー(炭化水素ガス、煙)。



モーター



ステッピングモーター

サーボ駆動



ディスプレイ



並列制御およびI2C制御を備えたHD44780チップでの表示

7つのセグメントインジケーター



その他



SDカードリーダー。

シフトレジスタ74HC595

マトリックスキーボード





以下の出版物では、プロジェクトのウェブサイトとプロジェクト開発の見通しについてお話します。



All Articles