Innholdsfortegnelse:

Fire Chasing Robot: 6 trinn (med bilder)
Fire Chasing Robot: 6 trinn (med bilder)

Video: Fire Chasing Robot: 6 trinn (med bilder)

Video: Fire Chasing Robot: 6 trinn (med bilder)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, November
Anonim
Image
Image
Koble flammesensoren til PICO
Koble flammesensoren til PICO

I dette prosjektet skal vi lage en brannslukningsrobot som jager en flamme og slukker den ved å blåse luft fra den fra en vifte.

Etter at du er ferdig med dette prosjektet, vet du hvordan du bruker flammesensorer med PICO, hvordan du leser utgangsverdien og hvordan du handler på det, og hvordan du bruker Darlington -sensorer med likestrømsmotorer og hvordan du kontrollerer dem. Det selvfølgelig sammen med en veldig kul brannslukningsrobot.

Rekvisita

  • PICO
  • Flammesensor
  • Liten likestrømsmotor
  • Liten propell
  • L298N H-bro motordriver
  • PCA9685 12-biters 16-kanals PWM-driver
  • 2WD robot chassisett
  • Mini brødbrett
  • Jumper ledninger
  • Skruer og muttere

Trinn 1: Koble flammesensoren til PICO

Koble flammesensoren til PICO
Koble flammesensoren til PICO

La oss starte med den viktigste delen av vår brannslokkingsrobot, som er evnen til å oppdage branner når de skjer. Det er derfor vi skal begynne med komponentene som er ansvarlige for å oppdage brannen, men før vi gjør det, la oss montere vårt 2WD -robotchassisett, ettersom vi bygger roboten vår basert på den.

Vi skal bruke 3 flammesensorer i dette prosjektet, og vi får roboten til å bevege seg uavhengig av hverandre, og vi plasserer disse sensorene på midten, venstre og høyre side av robotens chassis. Og de vil bli plassert på en slik måte at de har evnen til å peke flammekilden nøyaktig og slukke den.

Før vi begynner å bruke flammesensorene, la oss snakke om hvordan de fungerer: flammesensormoduler er hovedsakelig laget av infrarøde mottaker -lysdioder som kan registrere det infrarøde lyset som sendes ut fra flammer, og sende dataene som enten digital eller analog inngang, i våre hvis vi bruker en flammesensor som sender digital utgang.

Flammesensormodul pin outs:

  • VCC: positiv 5 volt, koblet til PICOs VCC -pin.
  • GND: negativ pin, koblet til PICOs GND pin.
  • D0: den digitale utgangspinnen, koblet til ønsket digital på PICO.

La oss nå koble den til vår PICO for å teste våre ledninger og kodelogikk, for å sikre at alt fungerer som det skal. Det er veldig enkelt å koble flammesensorene, bare koble VCC og GND til sensorene til henholdsvis VCC og GND på PICO, og koble deretter utgangspinnene som følger:

  • D0 (høyre flammesensor) → A0 (PICO)
  • D0 (midtre flammesensor) → A1 (PICO)
  • D0 (venstre flammesensor) → A2 (PICO)

Trinn 2: Koding av PICO med flammesensorene

Koding PICO Med flammesensorene
Koding PICO Med flammesensorene
Koding PICO Med flammesensorene
Koding PICO Med flammesensorene

Nå som vi har våre flammesensorer koblet til PICO, la oss begynne å kode slik at vi vet hvilken flammesensor som har en flamme foran, og hvilken som ikke gjør det.

Kode logikk:

  • Sett PICOs A0-, A2- og A3 -pinner som INPUT -pinner
  • Les hver sensorutgangsverdi
  • Skriv ut hver sensorutgangsverdi på den serielle skjermen, slik at vi kan diagnostisere om alt fungerer som det skal eller ikke.

Vær oppmerksom på at sensorene våre har en lav avlesning "0" når de føler brann, og en høy lesing "1" når de ikke føler brann.

For å teste koden din, åpne den serielle skjermen og se på hvordan den endres når du har ild foran den, sammenlignet med når den gjør det. Bildene vedlagt har avlesninger for ikke å ha flamme i det hele tatt, og avlesninger av en enkelt flamme foran den midtre sensoren.

Trinn 3: Koble til viften

Koble til viften
Koble til viften

For å gjøre en brannslukningsrobot effektiv må den ha evnen til å bekjempe brann, og for det skal vi lage en vifte som vi sikter mot brannen og slukker den med. Og vi skal lage denne viften ved å bruke en liten DC -motor med en propell installert på den.

Så la oss starte med å koble til likestrømsmotorene. Likestrømsmotorer har en høy strømtrekk, og derfor kan vi ikke koble dem direkte til vår PICO, da den bare kan tilby 40 mA per GPIO -pinne, mens motoren trenger 100 mA. Dette er grunnen til at vi må bruke en transistor for å koble den, og vi skal bruke TIP122 -transistoren, ettersom vi kan bruke den til å øke strømmen fra vår PICO til den mengden motoren trenger.

Vi skal legge til likestrømsmotoren og et eksternt "PLACE HOLDER" -batteri, for å gi motoren den nødvendige kraften uten å skade vår PICO.

DC -motoren bør kobles til på følgende måte:

  • Bunnpinne (TIP122) → D0 (PICO)
  • Samlerpinne (TIP122) → Likestrømsmotorledning "Likestrømsmotorer har ikke polariteter, så det spiller ingen rolle hvilken ledning"
  • Emitter pin (TIP122) → GND
  • DC -motorens tomme ledning → Positiv (rød ledning) til det eksterne batteriet

Ikke glem å koble GND for batteriet til GND på PICO, som om det ikke er tilkoblet, vil kretsen ikke fungere i det hele tatt

Viftens kodelogikk: koden er veldig enkel, vi vil bare endre koden vi allerede må slå på viften når avlesningen til den midterste sensoren er høy, og slå av viften når den midterste sensorens avlesning er lav.

Trinn 4: Koble til robotbilmotorene

Nå som roboten vår kan oppdage branner, og kan slukke dem med en vifte når brannen er rett foran den. Det er på tide å gi roboten muligheten til å bevege seg og plassere seg selv rett foran ilden, slik at den kan slukke den. Vi bruker allerede vårt 2WD robotchassisett, som kommer med 2 gir DC som vi skal bruke.

For å kunne kontrollere likestrømsmotorens kjørehastighet og retning må du bruke L298N H-bros motordriver, som er en motordrivermodul som har evnen til å kontrollere motorens kjørehastighet og retning, med evnen til å mate motorene fra en ekstern strømkilde.

Motordriveren L298N trenger 4 digitale innganger for å kontrollere motorenes rotasjonsretning, og 2 PWM -innganger for å kontrollere motorenes rotasjonshastighet. Men dessverre har PICO bare en enkelt PWM -utgangspinne som ikke kan kontrollere både retningen og hastigheten på motorens rotasjon. Det er her vi bruker utvidelsesmodulen PCA9685 PWM pins for å øke PICOs PWM for å passe våre behov.

Kabling ble nå litt vanskeligere, ettersom vi kobler til 2 nye motorer sammen med 2 moduler for å kontrollere dem. Men det vil ikke være et problem hvis du følger de medfølgende skjemaene og trinnene:

La oss starte med PCA9685 PWM -modulen:

  • Vcc (PCA9685) → Vcc (PICO)
  • GND (PCA9685) → GND
  • SDA ((PCA9685) → D2 (PICO)
  • SCL (PCA9685) → D3 (PICO)

La oss nå koble til L298N -motordrivermodulen:

La oss starte med å koble den til vår strømkilde:

  • +12 (L298N -modul) → Positiv rød ledning (batteri)
  • GND (L298N -modul) → GND

For å kontrollere motorens rotasjonsretning:

  • In1 (L298N -modul) → PWM 0 -pinners (PCA9685)
  • In2 (L298N -modul) → PWM 1 -pinners (PCA9685)
  • In3 (L298N -modul) → PWM 2 -pinners (PCA9685)
  • In4 (L298N -modul) → PWM 3 -pinners (PCA9685)

For å kontrollere motorens rotasjonshastighet:

  • enableA (L298N -modul) → PWM 4 -pinners (PCA9685)
  • enableB (L298N -modul) → PWM 5 -pinners (PCA9685)

Motordriveren L298N kan levere en regulert +5 volt, som vi skal bruke for å slå på PICO:

+5 (L298N -modul) → Vin (PICO)

Ikke koble denne pinnen hvis PICO er slått på via USB

Nå som vi har alt tilkoblet, programmerer vi roboten til å bevege seg selv for å vende direkte mot flammen og slå på viften.

Trinn 5: Fullfør koden

Nå som vi har alt riktig tilkoblet, er det på tide å kode det, så det fungerer også. Og dette er tingene vi vil at koden vår skal oppnå:

Hvis den registrerer brann rett frem (den midterste sensoren føler brannen), beveger roboten seg rett mot den til den når den angitte avstanden og slår på viften

Hvis den registrerer brann til høyre side av roboten (den høyre sensoren registrerer brannen), roterer roboten til brannen er rett foran roboten (den midterste sensoren), og beveger seg deretter mot den til den når den angitte avstanden og slår på viften

Hvis den registrerer brann på venstre side av roboten, vil den gjøre det samme som ovenfor. Men den vil svinge til venstre i stedet for til høyre.

Og hvis den ikke merker noen brann i det hele tatt, vil alle sensorene sende ut høy verdi og stoppe roboten.

Trinn 6: Du er ferdig

I dette prosjektet har vi lært hvordan vi leser sensorutgang og iverksetter tiltak avhengig av den, hvordan du bruker Darlington -transistoren med likestrømsmotorer og hvordan du kontrollerer likestrømsmotorer. Og vi brukte all vår kunnskap til å lage en brannslukningsrobot som et program. Som er ganske kult x)

Ikke nøl med å stille spørsmål du måtte ha i kommentarene eller på nettstedet vårt mellbell.cc. Og som alltid, fortsett å lage:)

Anbefalt: