工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

部品と材料

部品数量備考
Arduino UNO互換ボード1Megaでも動作可能だが未検証
Makerfabs Arduino GPSシールド1GPSモジュール搭載、ジャンパでピン選択可
ILI9341 2.4インチ TFTタッチシールド1Arduino UNOピン配列対応

使用アプリ・オンラインサービス

プロジェクト概要

Makerfabs様からGPSシールドを提供いただき、Visuino開発支援の一環としてチュートリアルを作成しました。手持ちのILI9341 TFTタッチシールドと組み合わせ、Visuinoのノーコード/ローコード開発でGPS位置情報をTFTに表示するデバイスを構築します。

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Step 1: 構成部品

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

※Makerfabs様が本プロジェクト用の特別コンボキットを販売されています。

Step 2: VisuinoでTFTシールド追加・設定

  1. Visuino起動(visuino.com)
  2. Arduinoコンポーネントのドロップダウン→「Add Shields...」
  3. 「Displays」カテゴリから「TFT Color Touch Screen Display ILI9341 Shield」を追加
  4. Object Inspectorで「Text」→「Size」を 2 に設定(文字拡大)

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Step 3: GPS位置情報表示用テキストフィールド追加

  1. TFT Displayの「Elements」プロパティでエディタを開く
  2. 「Text Field」を選択し、「追加」ボタンを3回クリック(緯度・経度・高度用)
  3. 3つのText Fieldを全選択し、「Auto Size」= False、「Width」= 10、「X」= 10 に設定

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Step 4: 各テキストフィールドの位置・初期値設定

エレメントY位置初期値
Text Field1(緯度)20"Update"
Text Field2(経度)40(空白)
Text Field3(高度)60(空白)

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Step 5: Serial GPSコンポーネント追加・接続

  1. コンポーネントツールボックスで「GPS」検索 → 「Serial GPS」を配置
  2. GPS1の「Location」→「Latitude」出力 → TFT Displayの「Elements.Text Field1.In」へ接続
  3. GPS1の「Location」→「Longitude」出力 → TFT Displayの「Elements.Text Field2.In」へ接続
  4. GPS1の「Location」→「Altitude」出力 → TFT Displayの「Elements.Text Field3.In」へ接続
  5. GPS1の「Out」ピン → Arduinoの「Serial[0].In」へ接続(ハードウェアシリアル使用)

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Step 6: コード生成・コンパイル・書き込み

  1. Visuinoで F9 または生成ボタンクリック → Arduino IDEが開く
  2. Arduino IDEで「書き込み」ボタンクリック

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

重要: Arduino UNOはハードウェアシリアルが1つしかなく、書き込みにも使用するため、書き込み完了後にGPSシールドを接続してください。

Step 7: GPSシールドのジャンパ設定・接続

Makerfabs GPSシールドのジャンパでシリアルピンを選択:

これによりハードウェアシリアル(Serial0)でGPSと通信します。
Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

その後、TFTシールドをArduino UNOの上にスタック、その上にGPSシールドをスタックします。
Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Step 8: TFTシールド接続確認

Arduino UNOにTFTシールドをピンヘッダ合わせて装着。
Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Step 9: 動作確認

  1. Arduino UNOに電源投入(USBまたは外部電源)
  2. 最初はTFTに「Update」と表示
  3. 暫くするとGPSシールドの青色LEDが点滅開始(衛星捕捉中)
  4. 測位完了で緯度・経度・高度がTFTに表示

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

Arduino GPS+TFTタッチシールドで作るリアルタイム位置表示デバイス

注意: 設置場所によっては測位に数分かかる場合があります。数分経っても表示されない場合は、電源を切って1分待ち、再投入してGPSをリセットしてください。

Visuinoプロジェクトファイル

完成したVisuinoダイアグラムは以下からダウンロード可能:
Visuino公式サイト またはプロジェクト添付ファイル FJV6QQLIWMR2MVJ.zip

まとめ

Visuinoのビジュアルプログラミングにより、1行のコードも書かずに「GPS受信→シリアル解析→TFT表示」という一連の処理を実装できました。Makerfabs GPSシールドはジャンパでハードウェアシリアル(Pin 0/1)接続が可能なため、SoftwareSerial不要で安定動作します。ILI9341 TFTシールドはUNOピン配列に完全対応しており、スタックするだけで配線不要です。

この組み合わせは、車両トラッカー、ハイキングナビ、ドローン地上局、資産管理タグなど、位置情報表示が必要なあらゆるプロジェクトのベースとして応用可能です。Visuinoなら後から「速度表示」「方位表示」「地図タイル表示(要外部メモリ)」「ログ記録(SDカード)」などの機能追加もドラッグ&ドロップで容易です。

製造プロセス

  1. ILI9341 2.4インチTFTタッチシールドでのビットマップアニメーション実装ガイド
  2. Arduino Dueと3.2インチTFTで作る温度監視付きリアルタイムクロック
  3. Arduino Nanoで2.8インチTFT SPI液晶にJPEG写真とRGB565動画を表示する
  4. Arduino MegaとNextion HMIで作る高機能ウェザーステーション
  5. ArduinoとNokia 5110ディスプレイで自作電圧計:ステップバイステップガイド
  6. Arduino UNOで1.17インチTFT LCDに画像を表示する方法
  7. BME280 温湿度・気圧データを Nextion タッチスクリーンに表示
  8. Arduino & MPU6050:SG90 & MG996Rサーボの精密制御
  9. u-blox LEA-6H 02 GPSモジュール: Arduino & Python 統合ガイド
  10. Arduino Dueでマスターする音声認識と音声合成
  11. Arduino Nano用 高性能2.8インチTFTシールド - 320×240 SPIディスプレイ