這是一個對ESP8266 WIFI模組的測試,ESP8266是一個價格便宜的WIFI模組,
而且是Mega2560用UART即可傳輸資料到ESP8266,相當方便,
首先,要使用ESP8266前要對其指令先有了解,然後是到thingspeak.com註冊,thingspeak.com提供8 channels的資料上傳,
幸運的是,我們可以不必從零開始,有依些範例是前人寫好,我們可以參考:
這是一個對ESP8266 WIFI模組的測試,ESP8266是一個價格便宜的WIFI模組,
而且是Mega2560用UART即可傳輸資料到ESP8266,相當方便,
首先,要使用ESP8266前要對其指令先有了解,然後是到thingspeak.com註冊,thingspeak.com提供8 channels的資料上傳,
幸運的是,我們可以不必從零開始,有依些範例是前人寫好,我們可以參考:
這個感測器模組整合計畫,是將目前的一些模組與Mega2560做整合,
想要解決的問題為:
(1) 感測器模組與Arduino Mega2560都是用線材來連接,連接多種感測器時,線會變得凌亂,線是插拔式的,對有些通訊傳輸,如SPI或I2C容易造成不穩定。
(2) Mega2560的電源與接口不夠多,目前只有5V, 3.3V, GND也只有三個,如果接超過兩個上的模組,在接線上就需要接電路裝置,如萬用版。
與前篇文章一樣,SD卡不是感測器,但因是在同一類主題中討論,故列入。
用Mega2560試了SD Datalogger好幾次,今天終於成功,
網路上的討論很多,我列出我是成功的參數:
首先根據註解:
這一篇是Demo使用Arduino Mega2560來操作人體感應模組(HC-SR501)與RGB LED,
當有人經過時,人體感應模組(HC-SR501)會感應而輸出高電位訊號,此時RGB亮紅燈,
當沒有人或是沒動靜時,人體感應模組(HC-SR501)會感應而輸出低電位訊號,此時RGB亮綠燈,
根據實測,人體感應模組(HC-SR501)對5~6m遠的人移動都會有感應。
本篇試者將資料寫入SD card中,
SD card接線設定與上一篇File的相同,
加入用dataFile.println()函數將資料寫入,
不過一開始寫不進去的機會很高,因此我加了一個delay(1000),如code中紅色標示,
與前篇文章一樣,SD卡不是感測器,但因是在同一類主題中討論,故列入。
只要是感測器的資料擷取,通常需要儲存,
尤其是行動式的裝置,SD card更是常用的儲存硬體,
我們使用Arduino IDE內建了一些SD卡的範例程式,
這一篇是說明如何使用Mega2560用SPI與OLED作通訊,
嚴格來說OLED不算是感測器,不過是當初一起買的模組,所以也就歸在一類了,
OLED是自發光,所以不用傳統LCD模組的背光,在視角問題上也比傳統LCD模組有很大的改善,
當在購買OLED時,要注意該款的OLED是否有提供函式庫,函式庫會隨者OLED所搭配的控制IC而有所不同,
本篇是一個概念,並沒有程式碼內容,也許日後會再補上相關的範例說明。
Pololu wheel encoder常用來做DC motor的編碼器,請參考網址:https://www.pololu.com/product/1217,
其建議使用的輪胎為;https://www.pololu.com/product/1090,
當然還需要DC motor:https://www.pololu.com/category/60/micro-metal-gearmotors,
今天試了一下買的MPU6050模組,想了解一下陀螺儀與加速計如何應用,
首先要先下載MPU6050的I2C範例程式,
1. MPU6050 範例程式下載網址:
http://www.i2cdevlib.com/devices/mpu6050#source
DHT sensor可以量測環境溫度與濕度,
使用DHT sensor很容易,只要下載網路上現有的 libary與example code,
下載網址為:
https://learn.adafruit.com/dht/downloads
依我搜尋的結果,DK electronics shield應該是目前可以提供較多種類馬達得驅動控制板。
DK electronics shield可以提供4個直流馬達的控制,stepper motor ,以及2個servo使用,
此shield有提供函式庫,
Software Libray 下載,將下載的的.cpp, .h與example資料夾放在Arduino/libraries/
拿到HC-06的藍芽模組後試了寫了一些程式,卻發現獻資料在傳輸時都是錯誤的資料,
於是只好從頭開始查起,我決定用PC端的LabVIEW用串列傳輸資料給USB/TTL模組,
USB/TTL是使用USB接頭連接在PC上模擬一個COM Port,USB/TTL的另一端連接在HC-06藍芽模組上,
注意藍芽模組的電源不能超過HC-06的電源限制,USB/TTL Tx -->HC-06 Rx,USB/TTL Rx -->HC-06 Tx,
本篇說明如何使用LabVIEW for Arduinod控制伺服機 (servo) 角度通常servo有三條線,分別為Vcc, PWM, GND,其中設定PWM Digital 4的腳位給servo使用,
一般可以控制PWM的Dutycycle來控制角度,不過LabVIEW for Arduino已經有提供好範例了,
在安裝完成Labview for Arduino後,
為了要寫servo的程式,我很好奇地去找了LabVIEW for Arduino的Toolkit,
原先以為是找不到了,不過後來卻發現可以從LabVIEW提供的VI Package Manager下載,
下載與安裝步驟如下:
上一篇說明如何使用LINX-LVH讓LabVIEW與Arduino通訊作數位訊號輸出,控制LED,
這一篇接者要說明如何使用LINX-LVH讓LabVIEW與Arduino通訊作類比訊號輸入,
我們使用可變電阻來Demo這個範例的運用,
首先將可變電阻皆在萬用板上面,然後騎三隻接腳分別接到Mega 2560的5V,GND與A0,
這篇文章,我們將介紹如何在LabVIEW中使用LINX-LVH的VI與MEga 2560 PCB Board作通訊,
達成數位輸出的LED On和Off控制。
再開始之前請確定安裝好LINX-LVH,如果安裝完成,到資料夾:
C:\Program Files\National Instruments\LabVIEW 2012\vi.lib\LabVIEW Hacker\LINX\Firmware\Source\Arduino\LINX_Arduino_Base_Firmware
LabVIEW與Arduino的通訊一直是很受注意的部分,因為一般NI的DAQ卡價格不便宜,
如果是一般的Digital IO或是不需要太高速擷取的Analog signal,其實用Arduino就可以辦的到,
關於LabVIEW與Arduino的連結本來有有個LabVIEW Interface for Arduino Toolkit的,
不過這最近在NI的網頁上已經被置換成 "LINX - LVH"
隨者Arduino的普及,周邊對應的感測器元件和一些配件也越來越多,
當軟體越來越容易寫,硬體也越來越容易取得時,剩下的就是發揮創意,想一些日常生活的應用,
我上網買了一些模組:
1. Arduino MEGA2560 R3 開發板 (支援LabVIEW控制)
今天拿到Lilypad Arduino USB的板子了,
Lilypad Arduino USB維持本來的小體積,使用了ATmega32U4,可直接以USB連接PC,不需要再另接外接卡,
詳細的資料可以參考網站LilyPad Arduino USB - ATmega32U4 Board:
關於第一次聽到Arduino是有人問我可不可以把Arduino跟LabVIEW結合,
所以我很好奇地去查了一下這是甚麼東西,結果讓我查出一些很好玩的作品,
像是自製的智慧眼鏡、機械手臂,和無人機,我覺得最有趣的應該是無人機,
我發現Arduino可以與LabVIEW,GPS,GSM,Bluetooth,智慧型手機和一堆感測元件結合,