잘 잃어버리기 때문에 인공위성 "미치비키"를 사용하여 현재지를 쉽게 취득해 보았다②
3565 단어 미치비키ArduinoESP-WROOM-02
소개
여러분 안녕하세요
RHEMS 기연의 아라키입니다.
이번은 실제로 GY-NEO6MV로 위치 정보를 취득해, 미치노리를 맵에 플롯 해 잃어버려도 괜찮게 했습니다
①은 이쪽
사용한 기기・서비스
대략 이런 느낌
Ambient란?
Ambient는 간단히 설명하면 IoT의 귀찮은 부분을 전부 간단하게 해주는 서비스입니다
Ambient로 데이터를 보내는 것만으로 그래프화하거나 저장합니다.
그렇기 때문에 매우 편리하다는 것입니다.
또한 Arduino에 라이브러리가 있으므로 코드도 매우 간단합니다.
초보자라도 편안하게 IoT를 접할 수 있게 되는 서비스입니다.
이번에는 Ambient에게 매우 신세를 질 것입니다.
자세히
GY-NEO6MV로 위치 정보를 취득→ESP-WROOM-02를 사용해 송신→Ambient가 처리→Web상에서 현재지를 확인→한
전혀 상세하지는 않지만 이런 식으로 최선을 다할 것입니다.
우선 코드는 이런 느낌
#include <ESP8266WiFi.h>
#include <SoftwareSerial.h>
#include <TinyGPS++.h>
#include <Ambient.h>
// WiFiアクセスポイントの定数
#define WIFI_SSID "SSID"
#define WIFI_PASSWD "PASSWORD"
//ambientの定数
unsigned int channelId = ①;
const char* writekey = "②";
SoftwareSerial mySerial(4, 5); //RX=pin4, TX=pin5
TinyGPSPlus gps;
WiFiClient client;
Ambient ambient;
// 起動時に一度だけ呼ばれるセットアップ関数
void setup(void) {
//シリアルコンソールの準備
Serial.begin(115200);
while (!Serial) {
;
}
Serial.begin(9600);
while (!Serial) {
;
}
// WiFi接続設定を行う
WiFi.mode(WIFI_STA);
WiFi.begin(WIFI_SSID, WIFI_PASSWD);
// WiFi接続を開始する
while ( WiFi.status() != WL_CONNECTED ) {
delay(500);
}
Serial.println(WiFi.localIP());
ambient.begin(channelId, writekey, &client);
}
//変数の準備
double ido, keido;
int zikan,hun;
// メインループ
void loop() {
while (mySerial.available()) {
gps.encode(mySerial.read());
}
if (gps.location.isUpdated()) {
Serial.print("緯度 :"); Serial.println(gps.location.lat(), 6);
Serial.print("経度 :"); Serial.println(gps.location.lng(), 6);
Serial.print("時間 :"); Serial.println(gps.time.hour() + 9);
Serial.print("分 :"); Serial.println(gps.time.minute());
Serial.println(" ");
//諸情報を代入
zikan = gps.time.hour() + 9;
hun = gps.time.minute();
ido = gps.location.lat(), 8;
keido = gps.location.lng(), 8;
//送るデータを準備(set)したあと送信(send)
ambient.set(1, zikan);
ambient.set(2, hun);
ambient.set(9, ido);
ambient.set(10, keido);
ambient.send();
}
}
Ambient에 데이터를 보내기 위해 도서관을 도입했습니다.
사용법은
GY-NEO6MV로 위치 정보를 취득→ESP-WROOM-02를 사용해 송신→Ambient가 처리→Web상에서 현재지를 확인→한
전혀 상세하지는 않지만 이런 식으로 최선을 다할 것입니다.
우선 코드는 이런 느낌
#include <ESP8266WiFi.h>
#include <SoftwareSerial.h>
#include <TinyGPS++.h>
#include <Ambient.h>
// WiFiアクセスポイントの定数
#define WIFI_SSID "SSID"
#define WIFI_PASSWD "PASSWORD"
//ambientの定数
unsigned int channelId = ①;
const char* writekey = "②";
SoftwareSerial mySerial(4, 5); //RX=pin4, TX=pin5
TinyGPSPlus gps;
WiFiClient client;
Ambient ambient;
// 起動時に一度だけ呼ばれるセットアップ関数
void setup(void) {
//シリアルコンソールの準備
Serial.begin(115200);
while (!Serial) {
;
}
Serial.begin(9600);
while (!Serial) {
;
}
// WiFi接続設定を行う
WiFi.mode(WIFI_STA);
WiFi.begin(WIFI_SSID, WIFI_PASSWD);
// WiFi接続を開始する
while ( WiFi.status() != WL_CONNECTED ) {
delay(500);
}
Serial.println(WiFi.localIP());
ambient.begin(channelId, writekey, &client);
}
//変数の準備
double ido, keido;
int zikan,hun;
// メインループ
void loop() {
while (mySerial.available()) {
gps.encode(mySerial.read());
}
if (gps.location.isUpdated()) {
Serial.print("緯度 :"); Serial.println(gps.location.lat(), 6);
Serial.print("経度 :"); Serial.println(gps.location.lng(), 6);
Serial.print("時間 :"); Serial.println(gps.time.hour() + 9);
Serial.print("分 :"); Serial.println(gps.time.minute());
Serial.println(" ");
//諸情報を代入
zikan = gps.time.hour() + 9;
hun = gps.time.minute();
ido = gps.location.lat(), 8;
keido = gps.location.lng(), 8;
//送るデータを準備(set)したあと送信(send)
ambient.set(1, zikan);
ambient.set(2, hun);
ambient.set(9, ido);
ambient.set(10, keido);
ambient.send();
}
}
Ambient에 데이터를 보내기 위해 도서관을 도입했습니다.
사용법은
또 Ambient의 사용상, 9에 위도, 10에 경도를 보내는 것으로 자동으로 맵에 플롯 되게 되어 있습니다
단지 이것만이므로 간단하네요!
다음은 회로부분
GY-NEO6MV에 전원을 공급하는데 ESP-WROOM-02만이라면 전혀 부족하지 않았던(미검증)같은 생각이 들었기 때문에 Arduino로부터 5V를 공급하고 있습니다
그러므로 더 좀더 소형화는 가능하게 되어 있습니다
회로 부분도 이것만으로 간단한 것이 되어 있으므로 IoT 초보자라도 확실히 쉽다고 생각합니다
결론
그럼 어땠어?
매우 쉽게 현재 위치를 확인할 수 있습니다.
다음 번은 실제로 사용해보고 정말로 현재 위치를 취득할 수 있어 사용감은 어떠한가를 기사로 하고 싶습니다
그럼 좋은 IoT에 라이프를!
Reference
이 문제에 관하여(잘 잃어버리기 때문에 인공위성 "미치비키"를 사용하여 현재지를 쉽게 취득해 보았다②), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Akijin/items/00aa775ff6f1a9931f1d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)