GR-COTTON(2)-電圧測定装置

各種センサーの値(電圧)をPCに取り組むために、各社からさまざまな装置が販売されています。 装置は複数センサー値が読み込めるものが多く、複数のセンサーになれば、そのぶん金額も高くなります。今回、読み込むセンサーの値は1つでよかったので、自作することにしました。何か良い基板はないかなと探したところ、小型な基板であることもあり、GR-COTTONを使って作成することにしました。

GR-COTTONは以前下記のページで紹介しています。この時は、LEDを点滅する
機能を作成したと思います。開発環境に関しても紹介していますので、参考に
していただければと思います。

GR-COTTON(1)-動作確認

今回、下記のような機能を構築しようと思います。

  1. 電源を投入したらLEDを点滅させる。
  2. 電圧の値を読む。
  3. READコマンドが受信したら、読み込んだ電圧値を返信する。

下記のように電圧を変化させてみると、下記のような出力を取得できました。

  • 3.3V → 1023
  • 1.65V → 512
  • 0.33V → 100

GR-COTTONはDTRの設定があるようなので、TeraTermで接続するとGR-COTTONが停止してしまいます。KurumiWriterで書き込む際に「Run after COM open(FTDI setting)」にチェックを入れて書き込む方法やTeraTermにもDTRの設定をするなどの対策方法もありますが、今回は、以前C#で作成したシリアル通信のアプリケーションで動作確認をしました。

C#言語(2)-RS232C通信(シリアル通信)

電圧を読み込むピンはA2ピンを使用しました。ちょうどGNDも隣にあるので使いやすいです。シリアル通信は、USBコネクタで行います。

それでは、プログラミンをしていきます。

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!

Arduino(3)-LCDに文字を表示

今回は、LCDを使って文字を表示してみたいと思います。LCDは20×4の文字数になります。ドライバはST7066が実装されています。LCDの制御はArduino Mega 2560で行います。

LCDには、下記のルールで文字を表示します。

  1. 1行目と3行目に「*」を表示していきます。
  2. 1行目と3行目のすべての欄が「*」で表示されたら、1行目と3行目の欄をクリアします。
  3. クリアが完了したら、 2行目と4行目に「*」を表示していきます。
  4. 2行目と4行目のすべての欄が「*」で 表示されたら、2行目と4行目の欄をクリアします。
  5. クリアが完了したら、 また、1の処理に戻り繰り返します。

LCDのピン配置は下記の通りです。

LCDとArduino Mega 2560は下記のように接続します。LCDの画像は20×4が見当たらなかったので、16×2を使用しています。LCDの画像は違いますが、配線は同じです。

今回は4bitモードで動作させるので、DB3、DB2、DB1、DB0は使用しません。

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!
2020年4月30日 | カテゴリー : Arduino | タグ : , | 投稿者 : prog

Arduino(2)-バイポーラ方式ステッピングモーター

前回は、Arduinoを使用して、ユニポーラ方式のステッピングモーターを動かしました。今回はユバイポーラ方式のステッピングモーターを動作させます。駆動電圧は12Vです。1ステップは7.5度のものになります。

モーターの結線は下記のようになっています。

ArduinoはArduino Mega 2560を使用します。下記のように接続しました。
モータードライバはTB6674PGを使用します。

今回モータードライバが1相励磁、1-2相励磁に対応していないので、2相励磁で
ステッピングモーターを動作させたいと思います。1、2、3、4を必要に応じてHigh、Lowに変更することで電流を流します。

それでは、プログラミングをしていきたいと思います。

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!

Arduino(1)-ユニポーラ方式ステッピングモーター

今回は、Arduinoを使用して、ステッピングモーターを動かしたいと思います。ユニポーラ方式のステッピングモーターを使用します。駆動電圧は12Vです。1ステップは5.625度のものになります。

モーターの結線は下記のようになっています。

1相励磁、1-2相励磁、2相励磁でステッピングモーターを動作させたいと思います。1に12Vを流して押して、2、3、4、5を必要に応じてLowにすることで電流を流します。

ArduinoはArduino Mega 2560を使用します。下記のように接続しました。モータードライバはTBD62503APGを使用します。

それでは、プログラミングをしていきたいと思います。

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!

WROOM-02(3)-通信体系

前回、WROOM-02(ESP8266デバイス)を使う為に、Arduino IDEのセットアップをしました。今回、WROOM-02を使用して、無線通信を行おうと思うのですが、通信体系について考えておこうと思います。

主要な通信体系は大きくわけて下記の3つ考えれられます。

  1. WROOM-02を親機と考えたPCとWROOM-02の通信
  2. PCを親機と考えたPCとWROOM-02の通信
  3. PCとWROOM-02の間に無線ルーターを挟んだPCとWROOM-02の通信

他にもあると思いますが、主要なものはこの3つかなと思われます。

まずは、1 のWROOM-02を親機と考えたPCとWROOM-02の通信を行おうと思います。1 のWROOM-02を親機と考えたPCとWROOM-02の通信をする為のコードは下記のようになります。※注意:下記のコードをesp8266に書き込むと、ATコマンドは使用できなくなります。

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!

WROOM-02(2)-Arduino開発環境設定

前回、WROOM-02を調査した結果、arduinoデバイスとして使用できる事がわかりました。それでは、Arduinoデバイスとして使用する為に、Aruduinoの開発環境をインストールします。下記サイトより、Arduino IDEをダウンロードしてインストールします。

https://www.arduino.cc/en/main/software

インストールが完了したら、Arduino IDEを起動して、ESP8266デバイスを使用する為の開発環境の設定を行います。※前回も説明しましたが、WROOM-02はESP8266を搭載したモジュールとなります。

まずは、ファイル-環境設定の追加のボードマネージャーのURLに、下記のURLコードを入力して、OKボタンを押します。

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!

WROOM-02(1)-無線モジュールを調査

無線でアナログ情報を取得したいので、マイコンで制御できる無線を調べていると、WROOM-02にたどり着きました。RS232通信で、無線の設定をするようです。早速、試してみました。試したのは下記の2つの製品です。

電子太郎 ESP-WROOM-02開発ボード 2.4 GHz Wi-Fiモジュール MicroUSB

新品価格
¥1,700から
(2019/11/9 11:21時点)

ESP-WROOM-02ピッチ変換済みモジュール《T型》

新品価格
¥925から
(2019/11/9 11:23時点)

ESP-WROOM-02ピッチ変換済みモジュールは、価格は安いですが、RS232レベル変換モジュールや抵抗などを用意する必要がありますので、少々手間がかかります。

ESP-WROOM-02開発ボードは、RS232レベル変換モジュールや抵抗などが搭載されているので、価格はESP-WROOM-02ピッチ変換済みモジュールと比べて、価格は高いですが、USBケーブルと繋げるだけで使用できます。まず、試してみたい方には、ESP-WROOM-02開発ボードのほうが便利なので、今回は、ESP-WROOM-02開発ボードを使用指していこうと思います。

それでは、早速、ESP-WROOM-02開発ボードとPCをUSBケーブルで接続します。すると、ドライバーのインストールが始まりますので、インストールが完了するまで待ちます。

インストールが完了したら、TeraTermを立ち上げて、動作を確認します。TeraTermを実行したら、設定-シリアルポートよりボーレートを115200bpsに設定します。次に、設定-端末より送信の改行コードをCR+LFに設定します。
開発ボードのリセットボードを押すと下記のようなメッセージが表示されます。

readyと表示されればOKです。wroom-02はATコマンドと呼ばれるものが、使用できます。例えば、ATと送信すると、OKと返信が返ってきます。


このATコマンドを使用する事で、wroom-02の設定ができます。ここでふと疑問に思うことがありました。ATコマンドが使用できるということは、マイコンのようなものが搭載されているのでは?ちょっと調べてみると下記のことがわかりました。wroom-02はESP8266を搭載したモジュールです。では、ESP8266なにかと言いますと、マイコンを搭載したWiFiモジュールのようです。さらに、Arduinoデバイスとしても使用することが可能なようです。すばらしいですね。Arduinoデバイスを使用してみたいと思ってもいたので、Arduinoデバイスとして使用して、WiFiを使用してみようと思います。

GR-ROSE(4)-e2studio schetch

今回はe2studioで作成したファームウェアをGR-ROSEに書き込んでみたいと思います。出荷時はGR-ROSEのRXマイコンにUSBファームウェアが書き込まれています。リセットボタンを押すことでストレージとなり、binファイルをコピーするとユーザーアプリケーションとして実行されるようになっています。このbinファイルがArduinoライクなスケッチで作成したファイルになります。今回は、このUSBファームウェアをイレースして、別のファームウェアを書き込みたいと思います。

まずは、書き込みファームウェアを作成します。Timerを使用して、LEDを点滅するファームウェアを作成しようと思います。

それでは、新規プロジェクトの作成を行います。新規プロジェクトの作成は下記のページを参考にしてください。

RX(3)-RS232通信

上記のページでは、ターゲット・デバイスを「R5F565NEHDFC」に設定しています。今回使用するマイコンは、「R5F565NEHDFP」なので、「R5F565NEHxFP」に設定してください。

プロジェクト・エクスプローラーに新規プロジェクトが追加されました。中央には、スマート・コンフィグレータが開かれると思いますので、入出力ポートのコンポーネントとタイマーのコンポーネントを追加・設定していきます。追加、設定の方法は下記のページを参考にしてください。

RX(2)-タイマーLED点滅

コンポーネントの追加・設定ができましたら、コード生成ボタンを押します。プロジェクトツリーの中に、コードが生成されました。それでは、main関数、r_Config_TMR0_TMR1_cmia0_interrupt関数にコーディングしていきます。コーディングの内容は、下記のページを参考にしてください。

RX(2)-タイマーLED点滅

コーディングが完了しましたら、書き込みを行います。書き込みは、Renesas Flash Programmerを使用して行います。Renesas Flash Programmerは下記のページよりダウンロードできます。

http:// https://www.renesas.com/jp/ja/products/software-tools/tools/programmer/renesas-flash-programmer-programming-gui.html

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!

GR-ROSE(3)-RS485

今回はGR-ROSEを使用して、RS485通信機能を作成しようと思います。前回(下記のサイト)でも述べましたが、GR-ROSEはさまざまなインターフェイスを搭載しております。

GR-ROSE(1)-動作確認

RS485を搭載している基板を探している時に、GR-ROSEを見つけました。今回は、RS485通信機能を使用して、LEDのON_OFFを実現します。

それでは、IDE for GRの実行して、USBケーブルでPCとGR-ROSEを接続しておきます。

GR-ROSEのスケッチでは、Serial7クラスを使用して、RS485通信を行います。まずは、シリアル通信のボーレート、ポートの設定を行います。シリアル通信のボーレート、ポートの設定は下記のように、beginメソッドを使用します。

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!

GR-ROSE(2)-Timer

今回はGR-ROSEを使用して、TimerによるLEDの点滅を作成しようと思います。前回(下記のサイト)では、LEDの点滅をSLEEP関数を使用して実現しました。

GR-ROSE(1)-動作確認

今回は、Timer機能を使用してLEDの点滅を実現します。

それでは、IDE for GRの実行して、USBケーブルでPCとGR-ROSEを接続しておきます。

このコンテンツを閲覧するにはログインが必要です。 はコチラ。あなたは会員ですか ? 会員登録はコチラ!