Talaan ng mga Nilalaman:
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-13 06:58
Para sa Data ng Plotting laban sa Petsa / Oras gamit lamang ang millis ng Arduino () tingnan ang InstructableArduino Petsa / Oras na Plotting / Pag-log Gamit ang Millis () at PfodApp
Ipinapakita sa iyo ng Maituturo na ito kung paano magbalak ng data ng sensor ng Arduino sa iyong Android mobile at makuha ito para sa pagla-download sa iyong computer. Ang mga tagubiling ito ay magagamit din sa www.pfod.com.au Walang kinakailangang programa sa Android at kakaunti ang kinakailangang programa ng Arduino. Ito ay isang extension ng Simple Mobile Data Logging gamit ang pfodApp
Hakbang 1: Mabilis na Pagsisimula ng Plotting
a) Kumuha ng isang Arduino board at isang Bluetooth Module (tulad ng Uno at Bluetooth Shield o FioV3 + Bluetooth) b) I-install ang Arduino IDE c) Ikonekta ang Arduino board (walang naka-attach na module ng Bluetooth) gamit ang isang USB cable. d) Kopyahin ang sketch na ito sa Arduino IDE at i-compile at i-load ito sa Arduino board) e) Ikabit ang module ng Bluetooth Shield sa Uno (Ang Bluetooth Shield ay paunang naka-configure para sa 9600baud NGUNIT itakda ang 3V / 5V switch sa 5V at itakda ang To Board / To FT232 lumipat sa posisyon ng To Board. f) I-load ang iyong Android Mobile sa pfodApp. g) Mag-set up ng isang koneksyon sa pagitan ng iyong mobile at ang module ng Bluetooth tulad ng inilarawan sa pfodAppForAndroidGettingStarted.pdf h) Simulan ang pfodApp at kumonekta sa iyong Arduino board sa pamamagitan ng module ng Bluetooth. tapos na ako. Ang iyong mobile ay magse-save at balangkas ng bilang ng converter ng Arduino AtoD para sa input A0
Hakbang 2: Ang Plotting Sketch
Ang paglulunsad gamit ang pfodApp ay nangangailangan ng dalawang bagay: - a) isang stream ng data (sa format na CSV) at b) isang utos ng balangkas mula sa pfodDevice (Arduino) Ang sketch, SimpleDataPlotting.ino, dalawang bagay lamang ang ginagawa. Una ay binabasa nito ang A0 analog input nang isang beses sa isang segundo at ipinapadala ang kasalukuyang mga segundo at ang mga bilang sa format na CSV, Pangalawa kapag nag-uugnay at hinihiling ng pfodApp ang pangunahing menu, ang sketch ay tumutugon kasama ang plotting command upang simulang isulat ang mga sukat. Narito ang code na ipinatupad nang isang segundo upang mabasa ang A0 analog input at isulat ang kasalukuyang segundo, binibilang sa koneksyon ng bluetooth. // read A0 once a sec int val = analogRead (0); // A0 // output ang kasalukuyang oras at pagbabasa sa csv format parser.print (thisMillis / 1000); // first field is time in secs parser.print (","); // pinaghiwalay ng kuwit ang mga patlang na parser.println (val); // bagong linya winakasan ang tala ng data
Narito ang code na tumutugon sa kahilingan ng pfodApp para sa pangunahing menu ng pfodDevice (Arduino Uno).
byte cmd = parser.parse (); kung (cmd! = 0) {// ay na-parse ang isang kumpletong msg {to} kung ('.' == cmd) {// hiningi ng pfodApp para sa pangunahing menu // ipadala pabalik ang "open plotting screen" parser.print (F ("{= Analog A0 Plot | Oras (sec) | Mga Bilang}")); // ito ang pangunahing menu} iba pa kung ('!' == cmd) {// CloseConnection command closeConnection (parser.getPfodAppStream ()); } iba pa {// unknown command parser.print (F ("{}")); // laging magpadala ng isang pfod msg kung hindi man ay mai-disconnect ang pfodApp. }}
Kapag nag-uugnay ang pfodApp ng iyong mobile na awtomatiko nitong hiningi ang pangunahing menu (sa pamamagitan ng pagpapadala ng {.} Mensahe), ang parser sa sketch (tingnan ang code sa ilalim ng sketch) ay parse ang {.} At ibabalik ang '.' utos Pagkatapos ay ibabalik ng sketch ang isang utos ng balangkas {= Analog A0 Plot | Oras (sec) | A0 Count} Inuutusan ng utos na iyon ang pfodApp na buksan ang isang screen na tinatawag na "Analog A0 Plot" at balangkas ang oras laban sa mga bilang. Sinusuri ng pfodApp ang papasok na hilaw na data at naghahanap ng mga linya na may dalawang patlang at kinukuha ang unang patlang bilang x halaga at ang pangalawa bilang halaga ng y at idinagdag ang puntong iyon sa isang lagay ng lupa. Tuwing binubuksan ang isang plotting screen (o isang raw data screen), sinisimulang i-save ng pfodApp ang lahat ng hilaw na data sa isang lokal na file sa iyong mobile. Patuloy na nai-save ng pfodApp ang data hanggang sa lumabas ka sa pfodApp. Maaari mong i-download ang file na ito sa iyong computer para sa karagdagang pagproseso (tingnan ang isa sa mga susunod na hakbang). Mayroong isang bilang ng iba pang mga pagpipilian sa utos ng balangkas na nagbibigay-daan sa iyo upang huwag pansinin ang ilang mga patlang, magtakda ng mga kaliskis ng balangkas, balangkas ng maraming mga plots sa isang tsart atbp Tingnan ang pfodSpecification para sa mga detalye at halimbawa. Ang pfodApp ay maaaring gumawa ng higit pa kaysa sa paglalagay lamang, tingnan ang mga halimbawang ito. Ang balangkas sa itaas ay isang halimbawa ng dalawang tsart na ang isa ay mayroong dalawang balangkas dito. Ang balangkas na ito ay mula sa ArduMower Gawin ang iyong sarili robotic mower! na gumagamit ng parehong pfodApp upang makontrol ang isang robotic mower. Ang parehong pfodApp ay ginagamit upang makontrol ang lahat ng mga pfodDevices. Ito ang pfodDevices na ganap na natutukoy kung anong mga screen ang ipinapakita sa mga gumagamit.
Hakbang 3: Higit pang Detalye
Ang pinakabagong bersyon ng pfodApp na magagamit mula sa Android Market ay nagbibigay-daan sa raw na data na ipinadala ng isang pfodDevice (hal. Arduino) na i-plot at mai-save sa isang file para magamit sa paglaon. Tingnan ang pfodAppForAndroidGettingStarted.pdf para sa kung paano mag-download ng file mula sa iyong Android mobile patungo sa iyong computer. Ang paglalagay ay nangangailangan ng dalawang bagay: - a) isang stream ng data (sa format na CSV) at b) isang utos ng balangkas mula sa pfodDevice Ang iyong pfodDevice (Arduino) ay maaaring magpadala ng anumang uri ng data sa labas ng mga mensahe ng pfod. mga mensahe ng pfod na nakapaloob sa pamamagitan ng {} na nakikilala ang mga ito mula sa iba pang data. Kung nais mong magbalangkas ng data kailangan mong ipadala ang data sa format na CSV. Iyon ang mga halaga ng data na pinaghiwalay ng mga kuwit, at winakasan ng isang bagong linya (alinman sa CR o LF o CR LF) Halimbawa105, 680 Kapag nais ipakita ng pfodDevice ang isang balangkas sa gumagamit, ang pfodDevice ay nagpapadala ng isang utos ng balangkas. Ang iyong Arduino sketch ay nasa kumpletong kontrol ng kung anong mga pfodApp plot. Ang utos ng balangkas ay nagbibigay ng isang pamagat sa screen ng balangkas at tumutukoy kung aling stream ng hilaw na data ang lalagyan at kung aling mga patlang mula sa stream na iyon. Ang magkakaibang mga daloy ng hilaw na data ay may magkakaibang bilang ng mga hiwalay na patlang ng kuwit. Ang bilang ng mga bar | sa utos ng balangkas ay dapat na tumutugma sa bilang ng mga patlang sa stream ng data na nais mong balangkasin. Ang mga linya ng data na may iba't ibang bilang ng mga patlang ay hindi pinapansin para sa balangkas na ito. Mayroong isang bilang ng mga pagpipilian para sa utos ng paglalagay ng plano upang piliin ang mga patlang upang magplano at upang itakda ang mga kaliskis at mga yunit at upang ilagay ang maraming mga plots sa isang tsart. Ang pinakasimpleng ipadala ang mga halagang x bilang unang patlang at ang mga halagang y tulad ng mga sumusunod na patlang, pagkatapos ay sa pangalan ng utos ng paglalagay ng x-axis at y-axis hal. {= Analog A0 Plot | Oras (sec) | A0 Nagbibilang} pamagat ng balangkas | x halagang pinahahalagahan | y mga patlang ng halaga Maaari mo ring tingnan ang raw data na ipinapadala sa iyong mobile. Maaaring ma-access ang screen na "Raw Data" mula sa pfodApp gamit ang menu ng iyong mobile o maaari itong buksan ng pfodDevice na nagpapadala ng isang mensahe ng streamingRawData, {= Pamagat Ng Screen na Pupunta Dito} ibig sabihin ay isang pinutol na bersyon ng plot ng utos. Alinmang paraan binubuksan ang pfodApp raw data ng mata at ipapakita ang data na naipadala mula sa pfodDevice. Kapag binuksan ang screen, magsisimula ang pfodApp upang mai-save ang data sa isang file. Ang pangalan ng file ay ipinapakita sa tuwing bubuksan ang screen (o isang plotting screen). Upang maiwasan ang pagpuno ng iyong mobile ng data na hindi mo gusto, ang pfodApp ay hindi nagsisimulang magsulat ng data sa SD card ng mobile hanggang sa unang pagkakataon na buksan ang screen ng Raw Data o ang plotting screen pagkatapos ng bawat bagong koneksyon. Ang unang pagkakataon na buksan ang screen ng Raw Data pagkatapos ng isang bagong koneksyon, hanggang sa 4K bytes ng dating natanggap na data (dahil ang koneksyon ay ginawa) ay nakasulat sa file kapag ito ay binuksan. Magagamit din ang data na ito para sa isang lagay ng lupa. Sa karamihan ng mga kaso nangangahulugan ito na ang lahat ng hilaw na data na ipinadala mula noong ang koneksyon ay na-save. Kapag ang koneksyon ay sarado, ang huling data ay nakasulat at ang file ay sarado. Kung mayroon nang file, mula sa isang dating koneksyon, idinaragdag ito ng bawat kasunod na koneksyon. Maaari mong i-download at tanggalin ang file mula sa iyong computer. Tingnan ang pfodAppForAndroidGettingStarted.pdf para sa kung paano i-access ang file mula sa iyong computer.
Hakbang 4: Pagsubok Sa SerialMonitor
Bago kumonekta sa pamamagitan ng bluetooth, maaari mong subukan ang sketch gamit ang Arduino IDE SerialMonitor. Alisin muna ang board ng bluetooth, dahil gumagamit ito ng parehong mga koneksyon sa TX / RX bilang koneksyon sa USB at serial monitor na koneksyon, at kopyahin at i-paste ang sketch (SimpleDataPlotting.ino) sa Arduino IDE at iprogram ang Arduino board. Pagkatapos buksan ang Arduino IDE SerialMonitor Maaari mong makita ang data na ipinapadala ng Uno board. Pagkatapos i-type ang {.} At i-click ang "Ipadala" upang maipadala ang getMainMenu utos, {.} Ito ang unang ipapadala ng pfodApp kapag kumonekta ito. Tumutugon ang sketch gamit ang utos ng Plotting. {= Analog A0 Plot | Oras (sec) | A0 Mga Bilang} na hihilingin sa pfodApp na buksan ang isang screen ng paglalagay at simulan ang paglalagay ng data. Nagsisimula rin itong i-save ang data sa isang file. Tingnan ang pfodSpecification para sa mga detalye sa lahat ng mga mensahe at screen na sinusuportahan ng pfod (Protocol for Operation Discovery).
Hakbang 5: Kumokonekta Sa isang Android Mobile
Mabuti ang lahat upang maaari mo na ngayong isara ang Arduino IDE at SerialMonitor at ikabit ang kalasag ng Bluetooth, tulad ng naunang ipinakita. Upang kumonekta sa iyong Android Mobile, i-install muna ang pfodApp mula sa Android Market pagkatapos ay sundin ang gabay na pfodAppForAndroidGettingStarted.pdf upang ipares ang iyong Bluetooth na kalasag sa iyong mobile at mag-set up ng isang koneksyon sa Bluetooth pfodApp. Tinawag ko ang aking koneksyon na "Simple Data Logging". Pagkatapos piliin ang koneksyon na "Simple Data Logging" upang kumonekta sa simpleng data logger. Sa sandaling kumonekta ang pfodApp ay ipinapadala nito ang mensahe ng. Sa balangkas na ito na konektado ko ang A0 sa Gnd at 5.5V at 3.3V at naiwan din itong lumulutang na pumipitas lang ng ingay.
Hakbang 6: Paglilipat ng Data sa Iyong Computer
Ang pfodAppForAndroidGettingStarted.pdf ay nagdedetalye kung paano ikonekta ang iyong mobile sa iyong computer sa pamamagitan ng USB at kung paano i-on ang USB mass storage upang ma-browse mo ito mula sa iyong computer. Mahahanap mo ang lahat ng mga hilaw na file ng data sa folder na pfodAppRawData. Tulad ng ipinakita sa itaas, nai-save ng Simple Data Logger ang data sa / pfodAppRawData / Simple Data Logging.txt pfodApp ay gumagamit ng pangalan ng koneksyon bilang pangalan ng file para sa pag-save ng data. Mga Ekstension sa Simple Data Logger Ngayon na mayroon kang isang simpleng data logger na kapwa mga balangkas at nai-save ang iyong data, maaari mong baguhin ang sketch upang maibalik ang iyong sariling data. Isulat lamang ang iyong data, sa format na CSV, sa parehong Koneksyon sa serial na konektado sa iyong module ng Bluetooth. Kung mayroon kang higit sa dalawang mga patlang ng data kakailanganin mong baguhin ang utos ng paglalagay. Tingnan ang pfodSpecification para sa mga detalye at halimbawa.