2025年10月13日月曜日

UnoR4Tutorial 10 (Websocket半分眠る) cf HC05,GPS module

https://newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-websocketを改変

UnoR4WiFi_WebServerでLIB検索失敗 Web Server for Arduino UNO R4 で成功

画面をよくみること INDEX.Hは画面のとおりに入れること

うまく動くと,WS://192.168.11.42:81とでるのでHTTP://192.168.42で接続

ただし、クライアント同士のあれこれはできん nodejsでは以下のように、かるチンなんだが

cf https://qiita.com/takayuki-nakamura/items/5bee265e130d7354dc72

超簡易的なチャットアプリを作りWebSocketについての理解を深める by nodejs


https://qiita.com/att55/items/da663f6e713c3bd073e8 
本格チャットアプリ nodejs 未踏

WebSocket Test Client :クローム拡張が必須

ーーーーーーーーHC05-------unoR3--------------------------------

MIT app inventorでHC05と連携する記事も参照のこと

https://burariweb.info/electronic-work/arduino-bluetooth-module-hc05-hc06.htmlで

手持ちのHC05をチェックするとbaurd rate 9600に設定されていた 以下でLED制御に成功

#include <SoftwareSerial.h> 

SoftwareSerial BTserial(4,5);  // RX,TX

int BTint = 0;

 void setup() 

{

  pinMode(LED_BUILTIN, OUTPUT);

  BTserial.begin(9600);

}

 void loop()

{

    if (BTserial.available())

    {  

        BTint = BTserial.read();

        if(BTint == '1'){

          digitalWrite(LED_BUILTIN, HIGH);

        } else if(BTint == '0'){

          digitalWrite(LED_BUILTIN , LOW);

        }

    } 

    delay(200);

}

ーーーーーーーGPSーunoR3ーーーーーーーーーーーーーーーーーーーーーー

 https://omoroya.com/arduino-lesson68/#toc10 UNO R3で緯度、経度が

StateNum=4 LAT=34.345378緯度 LNG=134.092559経度 ALT=38.40 SPEED=2.02 とでた

https://zenn.dev/megeton/articles/14e867dbc1ad11にTinyGPSあれこれが書いていた

#include <TinyGPS++.h> // TinyGPSPLUSでインストOKだった
#include <SoftwareSerial.h>

const int P_RX = 8; //Arduinoで受信するピンの設定
const int P_TX = 7; //設定するが接続しない

TinyGPSPlus gps;                 //gpsというオブジェクトの作成
SoftwareSerial mySS(P_RX, P_TX); //mySSというオブジェクトの作成

void setup() {
  Serial.begin(9600); //シリアル通信のスピード(ボーレート)を設定
  mySS.begin(9600);   //mySSシリアル通信のスピード(ボーレート)を設定
}

void loop() {
  //データが有効であれば読み出し
  while (mySS.available() > 0){
    if (gps.encode(mySS.read())){
      //Serial.println("gps start");
      display_monitor();
    }
  }
}

void display_monitor() {

  //GPS情報が正常に更新されていたら表示
  if (gps.location.isUpdated()) {

    //年、月、日、衛星数、緯度、経度、高度、対地速度の表示
    Serial.print(gps.date.year());  // 年 (2000+) (u16)
    Serial.print("-");
    Serial.print(gps.date.month()); // 月 (1-12) (u8)
    Serial.print("-");
    Serial.print(gps.date.day());   // 日 (1-31) (u8)
    Serial.print(" SateNum=");
    Serial.print(gps.satellites.value()); //衛星数
    Serial.print(" LAT=");
    Serial.print(gps.location.lat(), 6);  //緯度
    Serial.print(" LNG=");
    Serial.print(gps.location.lng(), 6);  //経度
    Serial.print(" ALT=");
    Serial.print(gps.altitude.meters());  //高度
    Serial.print(" SPEED=");
    Serial.print(gps.speed.kmph());       //対地速度
    Serial.println(" ");
  }
}

0 件のコメント:

コメントを投稿