日記/2017-04-13/ラダーロジックで nucleo マイコンをプログラミング
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
] [
リンク元
]
開始行:
* ラダーロジックで nucleo マイコンをプログラミング [#la92...
ラダーロジックで nucleo マイコンを制御してみました.
** ラダーロジックとは [#x157d0cc]
ラダーロジックとは,リレーの組み合わせでプログラムを記述...
で,リレーというのは,スイッチを電磁石で動かす素子です.
昔はリレーで論理回路を組んだコンピュータや計算機がありま...
詳しくは「[[WikiPedia.ja:ラダー・ロジック]]」を参照してく...
ラダーロジックの例を以下に示します.
| Q R Q |
+---| |---+---|/|-------( )---+
| | |
| S | |
+---| |---+ |
| |
- 左右の | は母線(電源ライン)
- ---( )--- はコイル(電磁石)
- ---| |--- は A 接点~
電磁石に電流が流れるとオンになる接点.
- ---|/|--- は B 接点~
電磁石に電流が流れるとオフになる接点.
- コイル・A 接点・B 接点の上の記号は変数~
同じ記号のコイルと接点でリレーを構成します.
で,上記の回路では
- Q もしくは S が ON になると,Q の電磁石に電流が流れる
- R が OFF になると Q に流れていた電流が切れる
ということで,論理回路の RS ラッチのような動作をします.
** nucleo とは [#uf57d74c]
nucleo とは,STM32 マイコンを搭載したボードマイコンです.
マイコンでの開発となると JTAG を使ってプログラムの書き込...
が,このボードには主マイコンの他にプログラム書き込み・デ...
#af_amazon(B0162JGEUW)
今回はこの↑ nucleo F446RE を使いました.
このボードは,38 ピン x 2 の入出力コネクタの他に Arduino ...
ただし,ロジック入出力レベルが Arduino UNO の 5V と違って...
** 開発の流れ [#aeabbc97]
図にすると以下のようになります.
PLC Open Editor ←→ (プロジェクト保存ファイル)
↓
(ST 言語プログラム)
↓
matiec STM32Cu...
↓ ↓
(C 言語プログラム) (グルーロジック) (C 言語ソース...
↓ ↓ ↓
-----------------------------------------------
↓
コンパイル・リンク
↓
(ファームウェアバイナリ)
↓
書き込み
+ PLC Open Editor でラダーロジックを入力し,IEC 61131-3 S...
+ matiec で ST 言語のファイルを C 言語に変換します.
+ STM32CubeMX(ソースコードツリージェネレータ)で GPIO ピ...
+ ラダーロジック側の C プログラムと STM32CubeMX で生成し...
+ C ソースツリーのコンパイル・リンク
+ ファームウェアバイナリの書き込み
初回はこのような手順になります.
入出力ピンが確定し,グルーロジックが出来上がっている状態...
+ ラダーロジックの編集
+ make 一発でファームウェアバイナリの生成
+ 書き込み
で,ラダーロジックの修正ができます.
** 利用シーン [#df934eba]
C 言語でプログラムが書けるのならば,素直に C 言語オンリー...
が,ラダーロジックの使い手は,制御対象に対して独自のノウ...
そのような方と共同で作業する場合は,このような開発手段も...
** 開発例 [#fbecabea]
LED 点滅のラダーロジックを組んで,実際に上記の手順でファ...
この記事のウケが良かったら書いてみようかと思います.
** リンク [#e9ea1405]
- PLC Open Editor~
http://www.openplcproject.com/plcopen-editor
- matiec~
https://bitbucket.org/mjsousa/matiec/
- STM32CubeMX~
http://www.st.com/ja/development-tools/stm32cubemx.html
あと,この本も参考になると思います.
#af_amazon(4621062441)
終了行:
* ラダーロジックで nucleo マイコンをプログラミング [#la92...
ラダーロジックで nucleo マイコンを制御してみました.
** ラダーロジックとは [#x157d0cc]
ラダーロジックとは,リレーの組み合わせでプログラムを記述...
で,リレーというのは,スイッチを電磁石で動かす素子です.
昔はリレーで論理回路を組んだコンピュータや計算機がありま...
詳しくは「[[WikiPedia.ja:ラダー・ロジック]]」を参照してく...
ラダーロジックの例を以下に示します.
| Q R Q |
+---| |---+---|/|-------( )---+
| | |
| S | |
+---| |---+ |
| |
- 左右の | は母線(電源ライン)
- ---( )--- はコイル(電磁石)
- ---| |--- は A 接点~
電磁石に電流が流れるとオンになる接点.
- ---|/|--- は B 接点~
電磁石に電流が流れるとオフになる接点.
- コイル・A 接点・B 接点の上の記号は変数~
同じ記号のコイルと接点でリレーを構成します.
で,上記の回路では
- Q もしくは S が ON になると,Q の電磁石に電流が流れる
- R が OFF になると Q に流れていた電流が切れる
ということで,論理回路の RS ラッチのような動作をします.
** nucleo とは [#uf57d74c]
nucleo とは,STM32 マイコンを搭載したボードマイコンです.
マイコンでの開発となると JTAG を使ってプログラムの書き込...
が,このボードには主マイコンの他にプログラム書き込み・デ...
#af_amazon(B0162JGEUW)
今回はこの↑ nucleo F446RE を使いました.
このボードは,38 ピン x 2 の入出力コネクタの他に Arduino ...
ただし,ロジック入出力レベルが Arduino UNO の 5V と違って...
** 開発の流れ [#aeabbc97]
図にすると以下のようになります.
PLC Open Editor ←→ (プロジェクト保存ファイル)
↓
(ST 言語プログラム)
↓
matiec STM32Cu...
↓ ↓
(C 言語プログラム) (グルーロジック) (C 言語ソース...
↓ ↓ ↓
-----------------------------------------------
↓
コンパイル・リンク
↓
(ファームウェアバイナリ)
↓
書き込み
+ PLC Open Editor でラダーロジックを入力し,IEC 61131-3 S...
+ matiec で ST 言語のファイルを C 言語に変換します.
+ STM32CubeMX(ソースコードツリージェネレータ)で GPIO ピ...
+ ラダーロジック側の C プログラムと STM32CubeMX で生成し...
+ C ソースツリーのコンパイル・リンク
+ ファームウェアバイナリの書き込み
初回はこのような手順になります.
入出力ピンが確定し,グルーロジックが出来上がっている状態...
+ ラダーロジックの編集
+ make 一発でファームウェアバイナリの生成
+ 書き込み
で,ラダーロジックの修正ができます.
** 利用シーン [#df934eba]
C 言語でプログラムが書けるのならば,素直に C 言語オンリー...
が,ラダーロジックの使い手は,制御対象に対して独自のノウ...
そのような方と共同で作業する場合は,このような開発手段も...
** 開発例 [#fbecabea]
LED 点滅のラダーロジックを組んで,実際に上記の手順でファ...
この記事のウケが良かったら書いてみようかと思います.
** リンク [#e9ea1405]
- PLC Open Editor~
http://www.openplcproject.com/plcopen-editor
- matiec~
https://bitbucket.org/mjsousa/matiec/
- STM32CubeMX~
http://www.st.com/ja/development-tools/stm32cubemx.html
あと,この本も参考になると思います.
#af_amazon(4621062441)
ページ名:
-->