Adruino Serial Plotter: 5 քայլ (նկարներով)
Adruino Serial Plotter: 5 քայլ (նկարներով)
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- ին, ես կշարունակեմ փոփոխություններ կատարել և նոր քայլեր ավելացնել այս Ուղեցույցին:

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