Բովանդակություն:

Adruino Serial Plotter: 5 քայլ (նկարներով)
Adruino Serial Plotter: 5 քայլ (նկարներով)

Video: Adruino Serial Plotter: 5 քայլ (նկարներով)

Video: Adruino Serial Plotter: 5 քայլ (նկարներով)
Video: How to setup and use ESP32 Cam with Micro USB WiFi Camera 2024, Նոյեմբեր
Anonim
Adruino սերիական պլոտեր
Adruino սերիական պլոտեր
Adruino սերիական պլոտեր
Adruino սերիական պլոտեր
Պատկեր
Պատկեր

Arduino Serial Plotter գործառույթն ավելացվել է Arduino IDE- ին, ինչը թույլ է տալիս իրական ժամանակում գրաֆիկացնել ձեր Arduino- ի սերիական տվյալները ձեր համակարգչին իրական ժամանակում: Եթե դուք հոգնել եք տեսնել, թե ինչպես է ձեր Arduino- ի անալոգային սենսորային մուտքային տվյալները լցվում ձեր էկրանին The Matrix- ի նման, սա կարծես ավելի գեղեցիկ միջոց է պատկերացնելու, թե ինչ է կատարվում: Serial plotter- ը անցանց գործիք է, որը թույլ է տալիս Ձեզ նաև պատկերացնել տվյալները և անսարքացնել ձեր կոդը անցանց ռեժիմում ՝ առանց երրորդ կողմի ծառայություններից օգտվելու, ինչպիսիք են Processing կամ Plotly: Քանի որ Arduino կայքում չկա պաշտոնական փաստաթուղթ ՝ Serial Plotter- ի օգտագործման և ֆունկցիոնալության վերաբերյալ, ես որոշեցի փաստաթղթավորել դրա օգտագործումը և հնարավորությունները:

Հատկություններ

  • Բազմակի գրաֆիկի գծագրում
  • Անցանց
  • Ավտոմատ չափափոխման գրաֆիկ
  • Աջակցում է բացասական արժեքի գրաֆիկներին
  • Ավտոմատ ոլորել X առանցքի երկայնքով
  • Տարբեր գույներ յուրաքանչյուր փոփոխականի համար

Րագրեր

  • Անցանց տվյալների վիզուալիզացիա
  • Կոդի անսարքությունների վերացում
  • Ալիքի ձևի վերլուծություն

Պահանջվող մասեր

Arduino - AliExpress կամ Arduino Starter Kit - AliExpress

Քայլ 1: Գծապատկեր կազմելը

Պատկեր
Պատկեր

Այժմ, երբ դուք տեղադրել եք Arduino IDE- ի վերջին տարբերակը (1.6.7 կամ ավելի բարձր), ժամանակն է հասկանալ, թե իրականում ինչպես է աշխատում Serial Plotter- ը: Arduino Serial Plotter- ը վերցնում է մուտքային սերիական տվյալների արժեքները USB միացման միջոցով և կարողանում է տվյալները գծագրել X/Y առանցքի վրայով, միայն այն բանից հետո, երբ տեսնում ենք, որ թվերը թքվում են դեպի Սերիական մոնիտոր: Ուղղահայաց Y առանցքի ավտոմատ կարգավորվում է, երբ ելքի արժեքը մեծանում կամ նվազում է, իսկ X առանցքը ֆիքսված 500 կետի առանցք է, որի առանցքի յուրաքանչյուր տիզ հավասար է կատարված Serial.println () հրամանին: Այլ կերպ ասած, սյուժեն թարմացվում է X առանցքի երկայնքով ամեն անգամ, երբ Serial.println ()-ը թարմացվում է նոր արժեքով:

Պատկեր
Պատկեր
Պատկեր
Պատկեր

Հիշեք, որ Baud Rate of Serial Plotter- ը սահմանեք այնպես, որ այն համապատասխանի ծածկագրին:

Բազմաթիվ հողամասեր

Ալիքի բազմաթիվ ձևերի ցուցադրման ժամանակ յուրաքանչյուր առանձին փոփոխական/արժեք/պարամետր ցուցադրվում է տարբեր գույնի միջոցով, ինչպես ցույց է տրված ստորև:

Պատկեր
Պատկեր

Մի քանի փոփոխական կամ ալիքի ձև միաժամանակ նկարելու համար երկու տպագիր հայտարարությունների միջև տպվում է «բացատ»:

Serial.print (ջերմաստիճան);

Serial.print (""); Serial.println (խոնավություն);

ԿԱՄ

Serial.print (ջերմաստիճան);

Serial.print ("\ t"); Serial.println (խոնավություն);

Այս դեպքում փոփոխականների ջերմաստիճանի և խոնավության արժեքները կունենան առանձին ալիքների ձևեր, որոնք գծված են միևնույն գրաֆիկի վրա միաժամանակ:

Քայլ 2: Անցանց տվյալների տեսանելիացում

Image
Image

Ես օգտագործել եմ Arduino- ի սերիական մոնիտորը իմ բույսերի ջրամատակարարման ավտոմատ համակարգում `խոնավության տվիչների տվյալները պատկերացնելու և պատկերելու համար:

Պատկեր
Պատկեր

Սերիական գծագրիչ ունենալու հիմնական նպատակն այն է, որ ձեզ անհրաժեշտ չէ ինտերնետին միացված լինել ՝ սենսորից կամ ձեր նախագծից տվյալները տեսնելու համար: Եվ, հետևաբար, Տվյալների վիզուալիզացիայի նպատակով սերիալային գծանկարիչը գերազանցում է իր աշխատանքը:

Անկախ նրանից, թե դա եզակի ալիք է, թե բազմապատկման գրաֆիկ, Serial Plotter- ը ինքնաբերաբար չափափոխում է իրեն և յուրաքանչյուր ալիքի գույնը կոդավորում: Տվյալների արտացոլման գործառույթը փորձարկելու համար կարող եք հետևել հետևյալ քայլերին.

  1. Միացրեք մի քանի տվիչ ձեր Arduino- ին
  2. Տպեք տվիչների արժեքները և վերբեռնեք ծածկագիրը:

  3. Բացեք Serial Plotter- ը:
Պատկեր
Պատկեր

Ես օգտագործել եմ Serial Plotter- ը իմ Tweeting Weather Station- ում ՝ տեսանելի դարձնելու Եղանակային կայանի տարբեր սենսորների ընթերցումը: Վերոնշյալ ալիքի ձևերը ցույց են տալիս SL-HS-220 տվիչի ջերմաստիճանի (26 ° C) և խոնավության (65%RH) ընթերցումների գծապատկերը:

Քայլ 3: Խնդիրների վերացում

Serial Plotter- ի լավագույն կիրառումներից է ծածկագրի և սխեմայի անսարքությունը: Սխալ կապերը կամ կոդավորման սխալ տրամաբանությունը երբեմն կարող են վերադարձնել անցանկալի ելք: Նման դեպքերում, երբ սերիական գծագրիչը վրիպազերծելու համար կոդի շատ տողեր կամ չափազանց շատ լարեր կարող են ցույց տալ սխալի ճշգրիտ կետը:

Serial Plotter- ի օգնությամբ դուք կարող եք ստուգել, թե արդյոք ցուցիչների ցուցմունքը սխալ է, կամ նույնիսկ եթե սենսորը պատշաճ կերպով միացված չէ Arduino- ին: Serial Plotter- ը նաև կօգնի կարգաբերել կոդը ՝ արժեքները ցուցադրելով տարբեր պայմանական հայտարարություններ և փոփոխականներ կամ նույնիսկ Arduino- ի կապանքների վիճակներ:

Պատկեր
Պատկեր

Դրա լավ օրինակը կլինի Խոչընդոտներից խուսափող ռոբոտի խնդիրների լուծումը: Այս օրինակում Կապույտ ալիքի ձևը ներկայացնում է Ուլտրաձայնային տվիչը, իսկ Դեղին և Կարմիր ալիքները ՝ ձախ և աջ շարժիչները: Խոչընդոտի և ռոբոտի միջև հեռավորությունը նվազելիս կապույտ ալիքի ձևը նվազում է: 10 -ի շեմային արժեքի (նվազագույն հեռավորության) դեպքում ռոբոտը թեքվում է աջ, հետևաբար երկու շարժիչներն ունեն տարբեր արժեքներ. Աջ = 50, Ձախ = 100: Դուք կարող եք տեսնել, որ Կարմիր ալիքի ձևը նվազում է, իսկ Դեղին ալիքի ձևը մնում է հաստատուն արագություն, որը ներկայացնում է աջ շրջադարձը:

Խնդիրների վերացում, թե արդյոք մետաղալարը ճիշտ չէ միացված, կամ բաղադրիչը սխալ է աշխատում, կամ ձեր կոդավորման տրամաբանությունը սխալ է, ձեզ շատ ժամանակ կպահանջեր: Սակայն Serial Plotter- ի օգնությամբ խնդիրը լուծելու համար պահանջվող ժամանակը կարող է զգալիորեն կրճատվել `վերլուծելով ալիքի ձևերը:

Պատկեր
Պատկեր

Քայլ 4: Ֆունկցիաների ստեղծում և վերլուծություն

Պատկեր
Պատկեր

Հիմնական ծրագրավորման զգացումով և կոդի մի քանի տողով Arduino- ն ի վիճակի է հանդես գալ որպես գործառույթների գեներատոր: Arduino- ն ունակ է արտադրել քառակուսի, եռանկյուն, սինուս և սղոց ալիքների ձևեր: Arduino IDE- ի նախորդ տարբերակներում կարելի էր դիտել միայն սերիական մոնիտորում արտադրվող ալիքի ձևի արժեքները ՝ առանց որևէ պատկերացման: Timeամանակատար կլինի արդյունքը վերլուծելը բացառապես թվային արժեքների հիման վրա. և սա այն վայրն է, որտեղ սերիական սյուժեն հարմար է գալիս. արտադրվող ալիքի ձևերի պատկերացման մեջ:

Պատկեր
Պատկեր
Պատկեր
Պատկեր
Պատկեր
Պատկեր
Ֆունկցիա Generator.ino
Ֆունկցիա Generator.ino

Ֆունկցիա Generator.ino

Քայլ 5. Ապագա բարելավում և լրացումներ

Պատկեր
Պատկեր

Arduino IDE- ին երկար ժամանակ անհրաժեշտ էր Սերիական սյուժեի հավելում: Այն բարձրացրել է Arduino IDE- ի ֆունկցիոնալությունը, սակայն դեռ չունի որոշ առանձնահատկություններ.

  • Autoscroll Toggle
  • Serial Plotter & Serial Monitor- ի միաժամանակ օգտագործումը:
  • X առանցքի մասշտաբ/ժամանակի սանդղակ է պահանջվում:

Քանի որ այս հնարավորություններն ավելացվում են Arduino IDE- ին, ես կշարունակեմ փոփոխություններ կատարել և նոր քայլեր ավելացնել այս Ուղեցույցին:

Խորհուրդ ենք տալիս: