Sisällysluettelo:

Bluetooth RC -auto STM32F103C: llä ja L293D: llä - Edullinen: 5 vaihetta
Bluetooth RC -auto STM32F103C: llä ja L293D: llä - Edullinen: 5 vaihetta

Video: Bluetooth RC -auto STM32F103C: llä ja L293D: llä - Edullinen: 5 vaihetta

Video: Bluetooth RC -auto STM32F103C: llä ja L293D: llä - Edullinen: 5 vaihetta
Video: Makeblock Untimate Robot Kit Part 2 : Robtic Arm Explaine, Software, Code App and Having Fun demo 2024, Marraskuu
Anonim
Image
Image
Tuhoa akkusyöjä!
Tuhoa akkusyöjä!

Tein Bluetooth Arduino -auton, kuten tässä kuvattu, Ardumotive_com. Ongelmani olivat akut ja niiden paino sekä kustannukset. Sittemmin matkapuhelimien halvoista virtapankkeista on tullut erittäin edullisia. Ainoa mitä minun piti tehdä, oli vähentää painoa. Koska olen halpa, vaihdoin STM32F103C -mikrokontrolleriin. STM32F103C -mikrokontrollerin voi ostaa alle 2 dollarilla ja se on paljon pienempi kuin Arduino. Muutin hieman koodausta toimimaan myös STM32F103C: n kanssa.

Tarvikkeet

  • Halpa kauko -ohjattava auto, joka syö paristoja. Kyllä, aivan kuten Ardumotive_com käyttää. Sammutat järjestelmän ja käytät sen sijaan puhelimen virtapankkia. Jos sinulla on resursseja rakentaa oma runko, pidä siitä huolta. Menin kadun lelukauppaan ja ostin halvan auton alle 10 dollarilla. Auto syö paristoja ja kaukosäädin paristoja-täydellinen parannukseen.
  • Puhelinvoimapankki- Ne ovat nyt erittäin halpoja. Poistu virtapankkeista, joiden sivulla on virtapainike. Et voi seurata autoa ja pitää painiketta painettuna. Se on typerää.
  • L293D-siru-Tämä on kaksois-H-silta, joka ohjaa sähkömoottoreita.
  • HC-06 Bluetooth-moduuli
  • A Kytkin- Käytin yksinkertaista virtakytkintä.
  • Jotkut johdot -puhelinjohto olisi hyvä, mutta hieman isompi 20 -säikeinen olisi parempi.
  • Proto -kortti tai muovi- tai pahvipala sinisen pillerin ja L293D: n kiinnittämiseen. Olen halpa, joten keksin hieman erilaisen järjestelmän ohuella aaltopahvilla- kuten hehkulamppukotelosta.
  • Kaksi halpaa USB-latauskaapelia-nämä voidaan ostaa Dollar Tree -puusta. Älä käytä mukavaa ohjelmointikaapelia. Toinen katkaistaan virtakytkimestä ja toinen lataa akun.

Valinnainen

  • 4 LEDiä -jos haluat ajovalot ja takavalot.
  • 4 220 ohmin vastukset- 3,3 voltin järjestelmän LED-valot.
  • Pietso tai pieni kaiutin sarvea varten.

Työkalut

  • Juotin ja juote
  • Hot Glue Gun- Tyttäreni on Hot Glue Gun Ninja!
  • Langanpoistimet ja katkaisimet
  • HUOMAUTUS: jos käytät käyttämääni pahvitekniikkaa proto -levyn sijasta, tarvitset Dremelin tai pienen poran

Vaihe 1: Tuhoa akkusyöjä

Tuhoa akkusyöjä!
Tuhoa akkusyöjä!

On aika pitää hauskaa tuhota akun syöjä! Kyllä, SITÄ TÄMÄ! Ole ylpeä siitä, että teet oman osasi maailman vihreämpää tekemiseen- OK, se on venytys, mutta joka tapauksessa… Siirry kehykseen.

Yllä on sama yksikkö, jonka tein Arduinon version. Arduino -versio käytti vakavaa akkuvirtaa, mikä teki autosta raskaamman. Joten otin sen takaisin kehykseen. Olin lisännyt joitain lokasuojia muovipullosta ja kuumaliimalla ja muokannut runkoa. Lisää vartalosta myöhemmin.

Kun olet saanut rungon, jossa moottorit ja ohjaus ovat paljaat, etsi kumpi moottorin liittimien puoli. Käytä akkua tai 5 voltin laturia moottorin testaamiseen.

Kun pyörät kääntyvät oikealle, merkitse ohjausmoottoriin positiivinen akkujohto "3" ja negatiivinen johto "6".

Kun pyörät pyörivät eteenpäin, merkitse käyttömoottorissa akun positiivinen johto "14" ja negatiivinen johto "11".

Vaihe 2: Koodi Arduino IDE: ssä

Koodi Arduino IDE: ssä
Koodi Arduino IDE: ssä
Koodi Arduino IDE: ssä
Koodi Arduino IDE: ssä

Voi olla parasta, jos prototyyppiset auton elektroniikka ensin leipälevylle.

Okei, tämä on yksi hankalista osista. "Sinistä pilleriä" ei voi ohjelmoida USB -portin kautta. En ole löytänyt "Blue Pillille" helpompaa ohjelmointiselitystä kuin Joop Brokkingin Youtube -video. Se selittää kaiken, mitä sinun tarvitsee tietää, mukaan lukien Roger Clarken STMduino -kirjasto. On olemassa tapa asentaa käynnistyslatain, jotta voit käyttää USB -liitäntää "Blue Pill" -ohjelmointiin, mutta sinun on joka tapauksessa ohjelmoitava käynnistyslatain sarjaväylän kautta.

Valitettavasti myös Bluetooth -sovitin käyttää sarjaväylää. Ohjelma on asennettava ensin sarjaväylän, PA9- ja PA10 -nastojen kautta, FTDI: n kautta, ja sitten voit tarkistaa kaikki asetukset Bluetooth -sovittimella.

Käytä leipälautaa ja aseta kaikki leipälaudalle aivan kuten yllä oleva hahmotelma. Irrota Bluetooth -sovittimen Sarja- ja RX -linjat STM32F103C: n PA9- ja PA10 -nastoista. Kiinnitä FTDI ja ohjelma. Varmista, että sarjaväylän linjat ylitetään, RX - Tx ja Tx - RX. Toinen saa ja toinen antaa.

Kun ohjelma on ladattu, voit avata sarjakonsolin ja lähettää

nähdä, toimivatko valot. Jos valot toimivat, voit lähettää

uudelleen sammuttaaksesi ne.

Aseta auto lohkoon kohottaaksesi renkaat ja lähetä

Pyörien pitäisi mennä eteenpäin. Jos eivät, käännä johdot päinvastaiseksi. Muista, kuinka merkitsimme johdot aiemmin. L293D: n vastaavat nastat tulee sovittaa yhteen.

Lopeta lähettämällä

Katsotaanpa koodin merkittäviä muutoksia.

Kommentoidussa osassa pitäisi ensin nähdä Ardumotiven tiedostojen luoja. Seuraavat kommentit selittävät, missä olen muuttunut hieman vastaamaan STM32F103C: tä.

/ * * Luonut Vasilakis Michalis // 12.12.2014 ver.2

* Projekti: Ohjaa RC -autoa Bluetoothin kautta Android -älypuhelimella.com/jgarbe/RCCAR_STM32F103C*Huomaa, että 8-bittiset arvot 0-255 on muutettu*heijastamaan 16-bittisiä arvoja 0-65535*//****************** **********STM32: ssa analoginen kirjoitus toimii edelleen 8-bittisellä 255: llä. käyttämällä pwmWrite (): ää analogWrite (): n sijaan ****************************/

Erityisesti nastoja ei ole nimetty samalla tavalla Arduinon ja STM32F103C: n välillä. Ilmoitamme nastat käyttämällä seuraavaa riviä. Jäljellä on yksi nasta, joka on ilmoitettu silmukassa alaspäin. Linjalla 197 PA5: ta käytetään akun varaustason lukemiseen.

//// L293 Yhteys

const int moottori A1 = PB6; // L293 const nastan nastaan 15 moottori A2 = PB7; // L293 const n moottorin nastaan 10 B1 = PB8; // L293 const n moottorin nastaan 7 B2 = PB9; // L293 nastaan 2 // Ledit yhdistetty STM32F103C -nastaan A12 Const int lights = PA12; // summeri /kaiutin Arduinolle UNO Pin A8 const int summeri = PA8; // Bluetooth (HC-06 JY-MCU) Tila-nasta STM32F103C const nastan A11 nastassa ATS intate BTState = PA11;

Myös käyttämällä analogWrite (); toimii edelleen "BluePill" -laitteella. Mutta on parempi ilmoittaa PWM -nastat käyttämällä

pinMode (, PWM);

Käytä sitten

pwmWrite (,);

HUOMAUTUS: 8-bittinen = 0-255, 16-bittinen = 0-65535

Rivit 32-44 ovat muutoksia akkuun. Jos aiot käyttää akun varaustason tarkistusta, sinun on käytettävä äänestyksen jakajaa käytössäsi olevalle akulle. Tämä osa ei näy Fritzing -luonnoksessa. Youtubessa on paljon selityksiä jännitteenjakajan luomiseen. Koska STM32F103C on 3,3 voltin siru, korjasin koodin täällä käyttääkseni fyysisesti jännitteenjakajaa. Arduino voi sietää joitain korkeampia jännitteitä toimitettujen ADC: iden kautta, mutta "sininen pilleri" ei.

/* Akun varaustaso tarkistetaan nastassa PA5

* Muutettiin STM32F103C: n seuraava rivi, koska ADC ei pysty käsittelemään * mitään yli 3.3 V: n * Kommentoin sitä juuri * Jännitteenjakaja, joka on laskettava kahdella vastuksella, on laskettava ja käytettävä * mittaamaan ADC -tulo koodin alapuolella * esimerkki: * GND --- 2K vastus ----------------- 1K vastus ------ 5v * | * | * 3.3v */ // const float maxBattery = 3.3; // Muuta arvo akun enimmäisjännitetasolle!

Vaihe 3: Laita kaikki yhteen

Yhdistä kaikki
Yhdistä kaikki
Yhdistä kaikki
Yhdistä kaikki
Yhdistä kaikki
Yhdistä kaikki
Yhdistä kaikki
Yhdistä kaikki

Käytän yleensä proto-levyä palasien sijoittamiseen ja juottamiseen reikien väliin kaiken yhdistämiseksi. Joskus "kuollut juotos" kaiken yhdessä enemmän Frankensteinin/3D -juovan ulkonäöstä.

Valitsin tämän hybridimenetelmän tehdäkseni laitteesta puhtaan ja kevyen- ja tietysti HALVAA!

Tämä menetelmä mahdollistaa myös merkinnät. Yksi deadbug -juottamisen pahimmista osista on, kun katsot IC -sirua alhaalta ja unohdat, mikä nasta on mikä.

Yllä olevat kuvat ovat itsestään selviä. Luulen, että vaikea osa on löytää tarpeeksi ohut pahvi kuoppaan ja olemaan jäykkä samanaikaisesti. Voit käyttää myös muovia, mutta sen merkitseminen on hieman vaikeampaa. Kun painan tapit levyyn ja merkitsen kuoppia, poran Dremelin avulla jokaisen tapin reiän.

Jos et ole jo huomannut, minulla on valot vain lisälaitteena kortilla. En käytä akun osoitinta, enkä piippausta. Tämä johtuu siitä, että projektini on eri tarkoitukseen. Se on itsestään selvää, kun näet lopputuloksen auton korilla. … Mutta tämä tuo toisen idean: Tässä projektissa on paljon käyttämättömiä nastoja. Ehkä tavaratilan avaaja, auton ovenavaaja, tulipalo-räjäytin,…… tai jopa mini- Galvani-Edison Luminiferous Aether Disturbce Generator!

Kun kaikki juotos on valmis, testaa ennen kuumaa liimaa liitosten jännitysten vähentämiseksi.

Käytin samaa Android -sovellusta kuin Ardumotive, se löytyy osoitteesta

Kun olet testannut auton toiminnot, on aika asettaa akku ja kytkin. Siirry seuraavaan vaiheeseen.

Vaihe 4: Akku ja kytkin

OK, tässä et voi seurata suunnitelmaani tarkasti.

Jostain syystä sinun on löydettävä hyvä paikka laittaa akku autoon jollakin tavalla, jolla voit ladata akun pankin donglesta tai ladata akun pistokkeen suoraan. Johdantovideossa teipasin akun ja mikro -ohjaimen kehykseen ja käytin sitä. Kun halusin lopettaa, irrotin vain akun. Tämän asennuksen ongelma on USB -kaapelin ja/tai virtapankkisi pistokkeiden pilaantuminen. Parempi olla kytkin.

Sinun on myös löydettävä hyvä paikka kytkimelle, johon auton kori sallii edelleen pääsyn. Käytin tavallista painonappikytkintä (ei hetkellistä kytkintä) ja asensin sen rungon alaosaan, jossa alkuperäinen paristolokero sijaitsee.

Sinun on leikattava USB -kaapeli puoliksi ja asetettava kytkin akun ja STM32F103C -USB -portin väliin. Kyllä, voit käyttää STM32F103C: tä USB -portin avulla. Et vain voi ohjelmoida sitä USB -portin kautta. Porasin jälleen Dremeliä poratakseni reikiä kytkimen juotos nastoille. Kun juotin, käytin kuumaliimaa, jälleen liitosten vahvistamiseen.

Vaihe 5: Aseta autosi runko runkoon

OK, sanoin, että suunnittelin uudelleen tämän auton alkuperäisen Arduino-version. Varsinainen lopputuote oli siis paikallisen balettiyhtiömme esittämän "Pähkinänsärkijä" -baletin lavaste. Avajaisissa hiiri juoksi lavan yli Drosselmeyerin sattumanvaraisen taikuuden kanssa. Käytin IKEA -rottaa ja asensin sen rungon, Arduinon ja paljon suuremman akun päälle. Tarvike oli raskas eikä ladattava. Tämä on paljon parempi!

Pidä hauskaa autosi kanssa. Muista, että STM32F103C -laitteessa on paljon muita tappeja, joita voidaan käyttää. Ehkä samanlainen skunk kuin "Toy Story 4".

Suositeltava: