Sadržaj:

Mjerite tlak pomoću mikrofona: bit: 5 koraka (sa slikama)
Mjerite tlak pomoću mikrofona: bit: 5 koraka (sa slikama)

Video: Mjerite tlak pomoću mikrofona: bit: 5 koraka (sa slikama)

Video: Mjerite tlak pomoću mikrofona: bit: 5 koraka (sa slikama)
Video: Топ 5 скрытых полезных программ Windows 10 2024, Juli
Anonim
Izmjerite pritisak pomoću Micro: bita
Izmjerite pritisak pomoću Micro: bita
Izmjerite tlak pomoću Micro: bita
Izmjerite tlak pomoću Micro: bita

Sledeća uputstva opisuju jednostavan za izradu i jeftin uređaj za merenje pritiska i demonstriraju Boyleov zakon, koristeći micro: bit u kombinaciji sa BMP280 senzorom pritiska/temperature.

Dok je ova kombinacija štrcaljke/senzora pritiska već opisana u jednom od mojih prethodnih uputa, kombinacija s micro: bitom nudi nove mogućnosti, npr. za projekte učionica.

Osim toga, broj opisa aplikacija u kojima se micro: bit koristi u kombinaciji sa senzorom sa I2C pogonom do sada je prilično ograničen. Nadam se da bi ovo uputstvo moglo biti polazište za druge projekte.

Uređaj omogućava da se izvrše kvantitativna mjerenja zračnog pritiska i da se rezultati prikažu na mikro: bit LED nizu ili na povezanom računaru, za kasniju upotrebu funkcija serijskog monitora ili plotera Arduino IDE -a. Osim toga, imate i haptičku povratnu informaciju jer ćete sami gurnuti ili povući klip štrcaljke i time osjetiti potrebnu snagu.

Zaslon vam prema zadanim postavkama omogućuje procjenu pritiska prema indikatoru nivoa prikazanom na LED matrici. Serijski ploter Arduino IDE -a omogućava isto, ali sa mnogo boljom rezolucijom (pogledajte video). Dostupna su i složenija rješenja, npr. na jeziku za obradu. Također možete prikazati precizne izmjerene vrijednosti pritiska i temperature na LED matrici nakon pritiskanja tipki A ili B, ali serijski monitor Arduino IDE -a je mnogo brži, omogućavajući prikaz vrijednosti u gotovo stvarnom vremenu.

Ukupni troškovi i tehničke vještine potrebne za izradu uređaja prilično su niski, pa bi to mogao biti lijep projekt u učionici pod nadzorom nastavnika. Osim toga, uređaj bi mogao biti alat za STEM projekte s naglaskom na fizici ili se koristiti u drugim projektima gdje se sila ili težina pretvaraju u digitalnu vrijednost.

Princip je korišten za konstrukciju vrlo jednostavnog mikro: bit dive-o-metra, uređaja za mjerenje dubine ronjenja.

Dodatak 27. maj 2018. godine:

Kako je Pimoroni razvio MakeCode biblioteku za BMP280 senzor, to mi je dalo priliku da razvijem skriptu koja će se koristiti za ovdje opisani uređaj. Skripta i odgovarajuća HEX datoteka mogu se pronaći u posljednjem koraku ovog uputstva. Da biste ga koristili, samo učitajte HEX datoteku na svoj micro: bit. Nema potrebe za posebnim softverom, a za uređivanje skripte možete koristiti mrežni uređivač MakeCode.

Korak 1: Korišteni materijali

Rabljeni materijali
Rabljeni materijali
Rabljeni materijali
Rabljeni materijali
Rabljeni materijali
Rabljeni materijali
Rabljeni materijali
Rabljeni materijali
  • Mikro: bit, moj je nabavljen od Pimoronija - 13,50 GBP
  • Kitronic Edge konektor za micro: bit - preko Pimoronija - 5 GBP, Napomena: Pimorini sada nudi ivični konektor prilagođen matičnoj ploči pod nazivom pin: bit sa pinovima na I2C portovima.
  • 2 x 2 pinske zaglavlja
  • Baterija ili LiPo za mikro: bit (nije potrebno, ali korisno), kabel baterije sa prekidačem (dito) - Pimoroni
  • kratkospojni kablovi za povezivanje senzora s rubnim priključkom
  • dugi (!) kratkospojni kablovi za senzor, barem toliko dugački kao špric,, f/f ili f/m
  • BMP280 senzor pritiska i temperature - Banggood - 5 USD za tri jediniceMjerni raspon za ovaj senzor je između 550 i 1537 hPa.
  • Plastični špric za kateter od 150 ml sa gumenim zaptivačem - Amazon ili prodavnice hardvera i bašte - oko 2 - 3 USD
  • pištolj za vruće ljepilo/vruće ljepilo
  • lemilica
  • računar sa instaliranim Arduino IDE -om

Korak 2: Upute za sastavljanje

Upute za montažu
Upute za montažu
Upute za montažu
Upute za montažu
Upute za montažu
Upute za montažu

Lemna zaglavlja za probijanje senzora BMP280.

Lemite dva 2 -pinska zaglavlja na konektore iglice 19 i 20 na Edge konektoru (pogledajte sliku).

Povežite micro: bit sa Edge konektorom i računarom.

Pripremite softver i micro: bit kako je opisano u uputama za Adafruit micro: bit. Pažljivo ih pročitajte.

Instalirajte potrebne biblioteke u Arduino IDE.

Otvorite skriptu BMP280 priloženu u kasnijem koraku.

Spojite senzor na Edge konektor. GND na 0V, VCC na 3V, SCL na pin 19, SDA na pin 20.

Otpremite skriptu na micro: bit.

Provjerite daje li senzor razumne podatke, vrijednosti tlaka bi trebale biti oko 1020 hPa, prikazane na serijskom monitoru. U slučaju da prvo provjerite kabele i veze, zatim instalaciju softvera i ispravite ih.

Isključite micro: bit, uklonite senzor.

Provedite duge kratkospojničke kabele kroz izlaz štrcaljke. U slučaju da ćete morati proširiti otvor. Pazite da ne primijetite oštećenje kabela.

Priključite senzor na kratkospojne kablove. Proverite da li su veze ispravne i dobre. Povežite se na micro: bit.

Proverite da li senzor radi ispravno. Pažljivo povlačeći kabele, pomaknite senzor na vrh štrcaljke.

Umetnite klip i pomaknite ga malo dalje od željenog položaja za odmor (100 ml).

Dodajte vruće ljepilo na kraj otvora šprica i pomaknite klip malo unatrag. Provjerite je li štrcaljka hermetički zatvorena, u protivnom dodajte još vrućeg ljepila. Ostavite da se vruće ljepilo ohladi.

Ponovo proverite da li senzor radi. Ako pomaknete klip, brojevi u serijskom monitoru i na ekranu micro: bita bi se trebali promijeniti.

Ako je potrebno, možete podesiti jačinu zvuka u špricu tako što ćete ga stisnuti blizu brtve i pomaknuti klip.

Korak 3: Malo teorije i neka praktična mjerenja

Malo teorije i neka praktična mjerenja
Malo teorije i neka praktična mjerenja
Malo teorije i neka praktična mjerenja
Malo teorije i neka praktična mjerenja

S ovdje opisanim uređajem možete pokazati korelaciju kompresije i pritiska u jednostavnim fizičkim eksperimentima. Budući da štrcaljka dolazi s ljestvicom "ml", čak je i kvantitativne pokuse lako izvesti.

Teorija koja stoji iza toga: Prema Boyleovom zakonu, [Zapremina * Pritisak] je konstantna vrijednost za plin na datoj temperaturi.

To znači da ako komprimujete zadanu zapreminu gasa N-puta, tj. Konačna zapremina je 1/N puta originalna, njen pritisak će porasti N-puta, kao: P0*V0 = P1*V1 = kons t. Za više detalja, pogledajte članak Wikipedia o zakonima o plinu. Na razini mora barometarski tlak je obično u rasponu od 1010 hPa (hekto Paskal).

Dakle, počevši od odmorišta npr. V0 = 100 ml i P0 = 1000 hPa, komprimiranje zraka na približno 66 ml (tj. V1 = 2/3 * V0) rezultirat će tlakom od oko 1500 hPa (P1 = 3/2 od P0). Povlačenjem klipa na 125 ml (5/4 puta veća zapremina) dolazi do pritiska od oko 800 hPa (pritisak 4/5). Mjerenja su zapanjujuće precizna za tako jednostavan uređaj.

Uređaj vam omogućuje da imate direktan haptički dojam kolika je sila potrebna za komprimiranje ili širenje relativno male količine zraka u štrcaljki.

Ali također možemo izvršiti neke proračune i eksperimentalno ih provjeriti. Pretpostavimo da komprimiramo zrak na 1500 hPa, pri bazalnom barometrijskom tlaku od 1000 hPa. Dakle, razlika u pritisku je 500 hPa, ili 50, 000 Pa. Za moju špricu, promjer (d) klipa je oko 4 cm ili 0,04 metra.

Sada možete izračunati silu potrebnu za držanje klipa u tom položaju. Dano P = F/A (pritisak je sila podijeljena s površinom) ili transformirano F = P*A. SI jedinica za silu je "Newton" N, za dužinu "Meter" m, a 1 Pa iznosi 1N po kvadratnom metru. Za okrugli klip, površina se može izračunati pomoću A = ((d/2)^2)*pi, što daje 0,00125 kvadratnih metara za moju špricu. Dakle

50, 000 Pa * 0,00125 m^2 = 63 N.

Na Zemlji 1 N korelira s težinom od 100 gr, pa je 63 N jednako težini od 6,3 kg.

To se može lako provjeriti pomoću vage. Gurnite štrcaljku s klipom na vagu dok se ne postigne pritisak od oko 1500 hPa, a zatim očitajte vagu. Ili pritiskajte dok vaga ne pokaže oko 6-7 kg, zatim pritisnite dugme "A" i pročitajte vrijednost prikazanu na LED matrici mikro: bita. Pokazalo se da procjena na osnovu gornjih proračuna nije bila loša. Pritisak nešto iznad 1500 hPa korelira s prikazanom "težinom" od oko 7 kg na vagi tijela (vidi slike). Također biste mogli okrenuti ovaj koncept i koristiti uređaj za izradu jednostavne digitalne vage zasnovane na mjerenjima pritiska.

Imajte na umu da je gornja granica senzora oko 1540 hPa, pa se svaki pritisak iznad ovog ne može mjeriti i može oštetiti senzor.

Osim u obrazovne svrhe, sustav se može koristiti i za neke primjene u stvarnom svijetu, jer omogućuje kvantitativno mjerenje sila koje pokušavaju pomaknuti klip na ovaj ili onaj način. Tako biste mogli izmjeriti težinu postavljenu na klip ili silu udarca koja udara u klip. Ili napravite prekidač koji aktivira svjetlo ili zujalicu ili reproducira zvuk nakon što je dosegnuta određena granična vrijednost. Ili možete napraviti muzički instrument koji mijenja frekvenciju ovisno o snazi sile koja se primjenjuje na klip. Ili ga upotrijebite kao kontroler igre. Upotrijebite maštu i igrajte se!

Korak 4: MicroPython skripta

U prilogu se nalazi moja BMP280 skripta za micro: bit. To je derivat BMP/BME280 skripte koju sam pronašao negdje na web stranici Banggood, u kombinaciji s Adafruit -ovom Microbit bibliotekom. Prvi vam omogućuje korištenje Banggood senzora, drugi pojednostavljuje rukovanje 5x5 LED zaslonom. Zahvaljujem se programerima oboje.

Podrazumevano, skripta prikazuje rezultate merenja pritiska u 5 koraka na micro: bit 5x5 LED displeju, omogućavajući da se vide promene sa malim odlaganjem. Precizne vrijednosti mogu se prikazati paralelno na Arduino IDE serijskom monitoru, ili se može prikazati detaljniji grafikon na ploteru Arduino IDE -a.

Ako pritisnete tipku A, izmjerene vrijednosti pritiska prikazuju se na micro: bit 5x5 LED nizu. Ako pritisnete tipku B, prikazuju se vrijednosti temperature. Iako ovo omogućuje čitanje preciznih podataka, značajno usporava cikluse mjerenja.

Siguran sam da postoje mnogo elegantniji načini programiranja zadataka i poboljšanja skripte. Svaka pomoć je dobrodošla.

#include xxx

#include Adafruit_Microbit_Matrix microbit; #define BME280_ADDRESS 0x76 unsigned long int hum_raw, temp_raw, pres_raw; potpisan dugi int t_fine; uint16_t dig_T1; int16_t dig_T2; int16_t dig_T3; uint16_t dig_P1; int16_t dig_P2; int16_t dig_P3; int16_t dig_P4; int16_t dig_P5; int16_t dig_P6; int16_t dig_P7; int16_t dig_P8; int16_t dig_P9; int8_t dig_H1; int16_t dig_H2; int8_t dig_H3; int16_t dig_H4; int16_t dig_H5; int8_t dig_H6; // spremnici za izmjerene vrijednosti int value0; int value1; int value2; int value3; int value4; // ------------------------------------------------ -------------------------------------------------- ------------------ void setup () {uint8_t osrs_t = 1; // Temperaturno preuzorkovanje x 1 uint8_t osrs_p = 1; // Prekomjerno uzorkovanje pritiska x 1 uint8_t osrs_h = 1; // prekomjerno uzorkovanje vlažnosti x 1 način rada uint8_t = 3; // Normalni način rada uint8_t t_sb = 5; // Tstandby 1000ms uint8_t filter = 0; // Filtriranje isključeno uint8_t spi3w_en = 0; // 3-žični SPI Onemogući uint8_t ctrl_meas_reg = (osrs_t << 5) | (osrs_p << 2) | mode; uint8_t config_reg = (t_sb << 5) | (filter << 2) | spi3w_en; uint8_t ctrl_hum_reg = osrs_h; pinMode (PIN_BUTTON_A, INPUT); pinMode (PIN_BUTTON_B, INPUT); Serial.begin (9600); // Serial.println ("Temperatura [stepeni C]"); // Serial.print ("\ t"); Serial.print ("Pritisak [hPa]"); // zaglavlje Wire.begin (); writeReg (0xF2, ctrl_hum_reg); writeReg (0xF4, ctrl_meas_reg); writeReg (0xF5, config_reg); readTrim (); // microbit.begin (); // microbit.print ("x"); kašnjenje (1000); } // ----------------------------------------------- -------------------------------------------------- -------- void loop () {double temp_act = 0.0, press_act = 0.0, hum_act = 0.0; potpisan dugi int temp_cal; unsigned long int press_cal, hum_cal; int N; // postavljanje graničnih vrijednosti za LED matrični prikaz, u hPa dvostruko max_0 = 1100; dupli max_1 = 1230; dupli max_2 = 1360; dupli max_3 = 1490; readData (); temp_cal = calibration_T (temp_raw); press_cal = calibration_P (pres_raw); hum_cal = calibration_H (hum_raw); temp_act = (dvostruko) temp_cal / 100.0; press_act = (dvostruko) press_cal / 100.0; hum_act = (dvostruko) hum_cal / 1024.0; microbit.clear (); // resetiranje LED matrice /* Serial.print ("PRESS:"); Serial.println (press_act); Serial.print ("hPa"); Serial.print ("TEMP:"); Serial.print ("\ t"); Serial.println (temp_act); */ if (! digitalRead (PIN_BUTTON_B)) {// prikazivanje vrijednosti u brojevima odlaže mjerenje krugova microbit.print ("T:"); microbit.print (temp_act, 1); microbit.print ("'C"); // Serial.println (""); } else if (! digitalRead (PIN_BUTTON_A)) {microbit.print ("P:"); microbit.print (press_act, 0); microbit.print ("hPa"); } else {// prikazivanje vrijednosti pritiska kao piksela ili linija na određenom nivou // 5 koraka: 1490 hPa // pragovi definirani max_n vrijednostima if (press_act> max_3) {(N = 0); // gornji red} else if (press_act> max_2) {(N = 1); } else if (press_act> max_1) {(N = 2); } else if (press_act> max_0) {(N = 3); } else {(N = 4); // osnovni red} // Serial.println (N); // u razvojne svrhe // microbit.print (N); // kao linija // microbit.drawLine (N, 0, 0, 4, LED_ON); // prebacivanje vrijednosti na sljedeći red vrijednost4 = vrijednost3; vrijednost3 = vrijednost2; vrijednost2 = vrijednost1; vrijednost1 = vrijednost0; vrijednost0 = N; // crtanje slike, stupac po stupac microbit.drawPixel (0, value0, LED_ON); // kao Pixel: stupac, red. 0, 0 lijevi gornji ugao microbit.drawPixel (1, vrijednost1, LED_ON); microbit.drawPixel (2, value2, LED_ON); microbit.drawPixel (3, value3, LED_ON); microbit.drawPixel (4, value4, LED_ON); } // šalje podatke na serijski monitor i ploter // Serial.println (press_act); // šalje vrijednosti na serijski port za numerički prikaz, izborno

Serial.print (press_act); // šalje vrijednost na serijski port za ploter

// iscrtati linije indikatora i popraviti prikazani raspon Serial.print ("\ t"); Serial.print (600); Serial.print ("\ t"); Serial.print (1100), Serial.print ("\ t"); Serial.println (1600); kašnjenje (200); // Mjeri tri puta u sekundi} // ---------------------------------------- -------------------------------------------------- -------------------------------------------------- - // sljedeće je potrebno za senzor bmp/bme280, zadrži kao ništavno readTrim () {uint8_t data [32], i = 0; // Popravi 2014/Wire.beginTransmission (BME280_ADDRESS); Wire.write (0x88); Wire.endTransmission (); Wire.requestFrom (BME280_ADDRESS, 24); // Popravi 2014/dok (Wire.available ()) {data = Wire.read (); i ++; } Wire.beginTransmission (BME280_ADDRESS); // Dodaj 2014/Wire.write (0xA1); // Dodaj 2014/Wire.endTransmission (); // Dodaj 2014/Wire.requestFrom (BME280_ADDRESS, 1); // Dodaj 2014/data = Wire.read (); // Dodaj 2014/i ++; // Dodaj 2014/Wire.beginTransmission (BME280_ADDRESS); Wire.write (0xE1); Wire.endTransmission (); Wire.requestFrom (BME280_ADDRESS, 7); // Popravi 2014/dok (Wire.available ()) {data = Wire.read (); i ++; } dig_T1 = (podaci [1] << 8) | podaci [0]; dig_P1 = (podaci [7] << 8) | podaci [6]; dig_P2 = (podaci [9] << 8) | podaci [8]; dig_P3 = (podaci [11] << 8) | podaci [10]; dig_P4 = (podaci [13] << 8) | podaci [12]; dig_P5 = (podaci [15] << 8) | podaci [14]; dig_P6 = (podaci [17] << 8) | podaci [16]; dig_P7 = (podaci [19] << 8) | podaci [18]; dig_T2 = (podaci [3] << 8) | podaci [2]; dig_T3 = (podaci [5] << 8) | podaci [4]; dig_P8 = (podaci [21] << 8) | podaci [20]; dig_P9 = (podaci [23] << 8) | podaci [22]; dig_H1 = podaci [24]; dig_H2 = (podaci [26] << 8) | podaci [25]; dig_H3 = podaci [27]; dig_H4 = (podaci [28] << 4) | (0x0F i podaci [29]); dig_H5 = (podaci [30] 4) & 0x0F); // Popravi 2014/dig_H6 = podaci [31]; // Popravimo 2014/} void writeReg (uint8_t reg_address, uint8_t podaci) {Wire.beginTransmission (BME280_ADDRESS); Wire.write (reg_address); Wire.write (podaci); Wire.endTransmission (); }

void readData ()

{int i = 0; uint32_t podaci [8]; Wire.beginTransmission (BME280_ADDRESS); Wire.write (0xF7); Wire.endTransmission (); Wire.requestFrom (BME280_ADDRESS, 8); while (Wire.available ()) {data = Wire.read (); i ++; } pres_raw = (podaci [0] << 12) | (podaci [1] 4); temp_raw = (podaci [3] << 12) | (podaci [4] 4); hum_raw = (podaci [6] << 8) | podaci [7]; }

potpisan long int calibration_T (potpisan long int adc_T)

{potpisani dugi int var1, var2, T; var1 = ((((adc_T >> 3) - ((potpisan dugačak int) dig_T1 11; var2 = (((((adc_T >> 4) - ((potpisan dugi int) dig_T1)) * ((adc_T >> 4) - ((potpisan dugačak int) dig_T1))) >> 12) * ((potpisan dugi int) dig_T3)) >> 14; t_fine = var1 + var2; T = (t_fine * 5 + 128) >> 8; return T;} nepotpisani dugi int kalibracija_P (potpisan dugi int adc_P) {potpisan dugi int var1, var2; nepotpisani dugi int P; var1 = (((potpisan dugi int) t_fine) >> 1) - (potpisan dugi int) 64000; var2 = (((var1 >> 2) * (var1 >> 2)) >> 11) * ((potpisan dugi int) dig_P6); var2 = var2 + ((var1 * ((potpisan dugi int) dig_P5)) 2) + ((((dugačak int sa potpisom) dig_P4) 2) * (var1 >> 2)) >> 13)) >> 3) + ((((sa dugim intom sa potpisivanjem) dig_P2) * var1) >> 1)) >> 18; var1 = ((((32768+var1))*((potpisano dugo int) dig_P1)) >> 15); if (var1 == 0) {return 0; } P = (((unsigned long int) ((((long long int) 1048576) -adc_P)-(var2 >> 12)))*3125; if (P <0x80000000) {P = (P << 1) / ((nepotpisani dugi int) var1); } else {P = (P / (unsigned long int) var1) * 2; } var1 = ((((long long int) dig_P9) * ((long long int) (((P >> 3) * (P >> 3)) >> 13))) >> 12; var2 = (((potpisan dugačak int) (P >> 2)) * ((potpisan dugi int) dig_P8)) >> 13; P = (unsigned long int) ((long long int s potpisom) P + ((var1 + var2 + dig_P7) >> 4)); return P; } nepotpisana kalibracija dugačkog inta_H (potpisana dugačka int adc_H) {potpisana dugačka int v_x1; v_x1 = (t_fine - ((potpisan dugačak int) 76800)); v_x1 = (((((adc_H << 14) -(((potpisan dugačak int) dig_H4) 15) * ((((((v_x1 * ((potpisan dugačak int) dig_H6)) >> 10) * (((v_x1 * ((potpisan dug int) dig_H3)) >> 11) + ((potpisan dugi int) 32768))) >> 10) + ((potpisan dugi int) 2097152)) * ((potpisan dugačak int) dig_H2) + 8192) >> 14)); v_x1 = (v_x1 - (((((v_x1 >> 15) * (v_x1 >> 15)) >> 7) * ((potpisano dugim intom) dig_H1)) >> 4)); v_x1 = (v_x1 419430400? 419430400: v_x1); return (nepotpisani dugi int) (v_x1 >> 12);}

Korak 5: MakeCode/JavaScript skripte

MakeCode/JavaScript skripte
MakeCode/JavaScript skripte

Pimoroni je nedavno objavio enviro: bit, koji dolazi sa senzorom pritiska BMP280, senzorom svjetla/boje i MEMS mikrofonom. Oni takođe nude MicroPython i MakeCode/JavaScript biblioteku.

Kasnije sam pisao MakeCode skriptu za senzor pritiska. Odgovarajuća hex datoteka može se kopirati direktno na vaš micro: bit. Kôd je prikazan ispod i može se izmijeniti pomoću mrežnog uređivača MakeCode.

To je varijacija skripte za micro: bit dive-o-meter. Podrazumijevano prikazuje razliku pritiska kao stupčasti grafikon. Pritiskom na tipku A postavlja se referentni tlak, pritiskom na tipku B prikazuje se razlika između stvarnog i referentnog tlaka u hPa.

Uz osnovnu verziju bar koda, pronaći ćete i "X", verziju sa presjekom i "L", namijenjenu za lakše čitanje.

neka kolona = 0

neka ostane = 0 neka je red = 0 neka je mjerač = 0 neka Delta = 0 neka Ref = 0 neka je Is = 0 Is = 1012 basic.showLeds (` # # # # # #… # #. #. #. #… # # # # # # # `) Ref = 1180 basic.clearScreen () basic.forever (() => {basic.clearScreen () if (input.buttonIsPressed (Button. A)) {Ref = envirobit.getPressure () basic.showLeds (` #. #. #. #. #. #. # # # # #. #. #. #. #. #. #`) basic.pause (1000)} else if (input.buttonIsPressed (Button. B)) {basic.showString ("" + Delta + "hPa") basic.pause (200) basic.clearScreen ()} else {Is = envirobit.getPressure () Delta = Is - Ref Meter = Math.abs (Delta) if (Mjerač> = 400) {Red = 4} else if (Mjerač> = 300) {Red = 3} inače if (Mjerač> = 200) {Red = 2} else if (Mjerač> = 100) {Red = 1} else {Red = 0} ostaje = Mjerač - Red * 100 ako (ostane>> 80) {Kolona = 4} inače ako (ostane>> 60) {Kolona = 3} drugo ako (ostane>> 40) {Kolona = 2 } else if (continue> = 20) {Column = 1} else {Column = 0} for (neka ColA = 0; ColA <= Kolona; ColA ++) {led.plot (ColA, Red)} basic.pause (500)}})

Preporučuje se: