Renesas Community
Renesas Community
  • User
    Join or sign in
  • Site
  • Search Community
  • User
  • Renesas Engineering Community
  • FAQ
  • HELP
  • More
  • Cancel
がじぇっとるねさすコミュニティ
がじぇっとるねさすコミュニティ
GR-CITRUS GR-CITRUSにHX711を接続して重さのデータをWIFIで飛ばしたい
  • Forums
  • Files
  • がじぇっとるねさす ゆーざー会 - Wiki
  • Tags
  • More
  • Cancel
  • New

 

 GR-SAKURA

 GR-KURUMI

 GR-COTTON

 GR-CITRUS

 GR-PEACH

 GR-KAEDE

 GR-ADZUKI

 GR-LYCHEE

 GR-ROSE

 GR-MANGO(*)

 SNShield

 Web Compiler

 IDE for GR

 TOPPERS関連

 女子美コラボ

 その他

 ※プロデューサミーティング中

 作り方使い方資料

 イベント関連

 作品記事

 体験記事

 その他

 

 ライブラリ

 ツール

 その他・過去ファイル

  • State Not Answered
  • Replies 14 replies
  • Subscribers 429 subscribers
  • Views 17633 views
  • Users 0 members are here
Options
  • Share
  • More
  • Cancel
Related Tags
  • DS18B20
  • gr-citrus
  • gr-sakura
  • I2c
  • IDE for GR
  • led
  • NeoPixel
  • WS8212B
  • 簡易オシロスコープ
Related

GR-CITRUSにHX711を接続して重さのデータをWIFIで飛ばしたい

takumi
takumi over 6 years ago

GR-CITRUSにHX711を接続して重さのデータをWIFIで飛ばしたいのですが、Rubyでのサンプルプログラムがありましたら教えてください。

  • Reply
  • Cancel
  • Cancel
  • Okamiya Yuuki
    0 Okamiya Yuuki over 6 years ago
    Rubyじゃなきゃいけないのですよね。たろサさんに降臨していただければいいのですけどね。

    Arduinoライブラリについては以下のGitHubをzipでダウンロードしてそのままビルドが通るようですので、中身のコードをRubyにポーティングすればいいと思うのですけどね。
    https://github.com/bogde/HX711
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • takumi
    0 takumi over 6 years ago in reply to Okamiya Yuuki
    回答ありがとうございます。IDE4GRにHX711のライブラリを設定しました。

    しかし下記Sketchにて実行してもUSBシリアルポートが見えません。


    #include "hx711.h"
    Hx711 scale(A1, A0);
    void setup() {

    Serial.begin(9600);

    }

    void loop() {

    Serial.print(scale.getGram(), 1);
    Serial.println(" g");

    delay(200);
    }
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • fujita nozomu
    0 fujita nozomu over 6 years ago in reply to takumi
    USB_Driver/GR_CITRUS_USBCDC.inf のドライバは導入されてますか?
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • takumi
    0 takumi over 6 years ago in reply to fujita nozomu
    sampleprg:HX711SerialBeginの方をではUSBポートが見えるようになりました。
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • takumi
    0 takumi over 6 years ago in reply to takumi
    HX711のライブラリをセットして重さのデータの表示はできました。WA-MIKANのWifi通信についてRubyの例は色々あるのですが、Arduinoでの例が見つけられません。WA-MIKANのArduinoのSketchの参考プログラムありましたら教えてください。よろしくお願いいたします。
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • fujita nozomu
    0 fujita nozomu over 6 years ago in reply to takumi

    > Arduinoでの例が見つけられません。WA-MIKANのArduinoのSketchの参考プログラムありましたら教えてください。

    「arduino esp8266 接続」とかで検索すれば参考になりそうなページが出てくると思います。

    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • Okamiya Yuuki
    0 Okamiya Yuuki over 6 years ago in reply to fujita nozomu
    Webコンパイラテンプレートにはmilkcocoaへの接続でESP8266用のライブラリも用意してます。以下はその例の実行手順です。
    gadget.renesas.com/.../com_sp_milkcocoa.html
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • takumi
    0 takumi over 6 years ago in reply to Okamiya Yuuki
    シリアル接続の確認でつまずいています。
    以下のスケッチを走らせてもシリアルモニタには
    「odnight moon!」
    とだけ表示されて止まります。
    速度を変えても同じです。
    どこがおかしいかご教授うよろしくお願いします。



    #include <Arduino.h>
    #include <SoftwareSerial.h>

    SoftwareSerial mySerial(5, 6); // RX, TX

    void setup() {
    // Open serial communications and wait for port to open:
    Serial.begin(9600);
    while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
    }


    Serial.println("Goodnight moon!");

    // set the data rate for the SoftwareSerial port
    mySerial.begin(9600);
    mySerial.println("Hello, world?");
    }

    void loop() { // run over and over
    if (mySerial.available()) {
    Serial.write(mySerial.read());
    }
    if (Serial.available()) {
    mySerial.write(Serial.read());
    }
    }
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • TakSan
    0 TakSan over 6 years ago
    takumi さん

    横からすみません。TakSan @ 通りすがりです。

    私もセンサーデータを WIFI で飛ばす事を実現しているのですが、久しぶりにアクセスしたら本スレッドがちょっと目に入ってきたので。

    5番pin 6番pin につなげているのは何でしょうか?
    WA-MIKAN に搭載された WIFI モジュール ESP8266 との前提で回答します。

    このシリアルには、ESP8266 へのATコマンド(制御コマンド)で会話しないと駄目です。"Hello, world?" は ATコマンドではありませんので無視されるかエラーを返されるかと思います。
    止まっているのではなく無視されているだけのように思います。

    ATコマンドを利用する為のプログラム環境は、 岡宮さんが推奨しておられている、WebコンパイラテンプレートはATコマンド制御用に組み込まれており、これを使うことで、ATコマンドを知らなくても関数レベルでアクセス出来るようになっています。

    そのままだと、gr-sketch.cpp がサンプルプログラムとなりますが、Milkcocoa を使う前提のコードとなっています。
    もっと単純に(クラウドサーバーを介さずに)純粋なデータを直接送りたいようであれば、サンプルプログラムが別にあります。
    同じテンプレートを開いた後に下記のフォルダーにあるファイルを開いて下さい。
    milkcocoa-lib/ESP8266_Arduino_AT/UdpClientSingle/UdpClientSingle.ino

    これをそのままコピーして gr-skectch.cpp に貼り付け少し変更すれば利用できます。
    以下の箇所を編集すればいいです。

    ----------------------------------------------------
    #define SSID '自分の無線LANルーターのID'
    #define PASSWORD '自分の無線LANルーターに設定しているパスワード'
    #define HOST_NAME '送り先(IPアドレス /ドメイン名どちらでもOK)'
    #define HOST_PORT '送り先のポート名'
    ----------------------------------------------------

    wifi.begin( 'WA-MIKAnにつながっている Serial( 5pin 6pin なら Serial2' ); 
    ----------------------------------------------------

    サンプルは文字列を送って受信した文字列を表示するだけのようですが、私はバイナリーデータを使ってセンサーデータを送ってますが問題なく動いています。
    送信先アプリも自作であれば何とでも出来ると思いますが、決まった形式があるのであればそれに合わせて下さい。

    あと、
    SoftwareSerial mySerial(5, 6); // RX, TX
    とありますが、 SoftwareSerial を使っている理由は何でしょうか?
    GR-CITRUS であれば、このピンには Seria2 がハード的に割当たっているので使えるかと思いますが、何か制約があるのでしょうか?
    ちなみに、上記サンプルはハードシリアルを使う前提です。
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • takumi
    0 takumi over 6 years ago in reply to TakSan
    TakSanさん
    親切丁寧な書き込みありがとうございます。こちらがわからなかったことがしっかり書かれており早速やってみます!!また結果報告します。ありがとうございます!!
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • TakSan
    0 TakSan over 6 years ago in reply to takumi
    takumi さん

    頑張ってくださいね。

    別件で CITRUS の回路図見ていて、一つ思い出しましたのであわてて書き込みしました。

    Serial2 に割当たっている PIN は ESP8266 (WIFIモジュール) の EN 端子につながっています。以前私もはまったような記憶があります。

    EN 端子に TX や SDA (i2c時) をつないで信号を出す (= H/L 操作する) とWIFIモジュールの電源の On /Off 操作をすると同じようなことになってしまってだったか、WA-MIKAN側でプルアップされてるのでそちらで引っ張られただったのか、その辺の記憶があいまいですが、とにかくまともに動かなかった事だけは覚えています。

    そのままだと、私みたいにはまっちゃうのではないかと思い取り急ぎ書き込みさせていただきました。
    別の端子に切り替えたほうがいいかと思いました。(WA-MIKANのジャンパー設定は 変更する必要あるかと思います。)
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • takumi
    0 takumi over 6 years ago in reply to TakSan
    TakSanさん
     
     色々お気遣いありがとうございます。
     まだうまくいけてませんが
     HardSirial = 自動的に5.6pinに接続される
     SoftwareSerial mySerial(5, 6); // RX, TX = Serial2 5.6pinに接続される
    でも誤動作するので他の
    SoftwareSerial mySerial(7, 8); // RX, TX = Serial3 7.8pinに接続される
    とした方が良い
     
     という理解でよろしいでしょうか?

     宜しくお願いします。
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • TakSan
    0 TakSan over 6 years ago in reply to takumi
    takumi さん

    すみません。個人的にいろいろと立て込んでいて返信遅れました。
    その後の進展のほうはいかがでしょうか。

    > SoftwareSerial mySerial(5, 6); // RX, TX = Serial2 5.6pinに接続される
    でも誤動作するので他の
    > SoftwareSerial mySerial(7, 8); // RX, TX = Serial3 7.8pinに接続される

    > という理解でよろしいでしょうか?
    ほぼ、その理解でいいかと思います。

    ただ、 7pin 8pin のほうにも ハード的にシリアルが割当たっていますので、わざわざsoftware シリアルを使う必要はありません。
    SoftwareSerial をつかうことにこだわる理由がわかりませんが… SoftwareSerial の実装を見たことないので、ESP8266 の制御に使えるのかわかりません。

    特に理由がないのであれば、先日お伝えしたサンプルソースで
    wifi.begin( Serial3) とすれば、 7,8pin ですんなり通信できるようになるはずです。
    ちなみに WA-MIKAN 側は工場出荷時に 7, 8pin で WIFIを制御するようなジャンパー設定になっています。他の端子にて ESP8266 を制御するためには
    いくつか WA-MIKAN のジャンパーを半田で変更する必要あります。(説明書参照ください。)
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
  • takumi
    0 takumi over 6 years ago
    TakSanさん

     いつもありがとうございます。
     教えていただいた以下のプログラム動きました!!
     milkcocoa-lib/ESP8266_Arduino_AT/UdpClientSingle/UdpClientSingle.ino

     これにのHX711の測ったデータを送りたいのですが、
     WebコンパイラにはHX711のライブラリがないので、
     WebコンパイラのスケッチをコピーしてIDE4GRで書き込んでも以下の
     ようなエラーが出てしまいます。



    Arduino: V1.00 (Mac OS X), Board: "GR-CITRUS"

    In file included from sketch_oct10a.ino:1:0:
    /Users/tajimatakumi/Documents/IDE4GR/libraries/ITEADLIB_Arduino_WeeESP8266-master/ESP8266.h:31:28: fatal error: SoftwareSerial.h: No such file or directory
    #include "SoftwareSerial.h"
    ^
    compilation terminated.

    This report would have more information with
    "Show verbose output during compilation"
    enabled in File > Preferences.
    • Cancel
    • Up 0 Down
    • Reply
    • Verify Answer
    • Cancel
サイト使用条件
プライバシーポリシー
お問い合わせ
© 2010-2023 Renesas Electronics Corporation. All rights reserved.