Mi legyen az autóból? - első lépések
2018. június 04. írta: hahópihehh

Mi legyen az autóból? - első lépések

Kicsit féltem már attól, hogy el fogom felejteni a programozást, mire beszerzek minden alkatrészt mindahhoz, amit elképzeltem, hogy majd összerakok, úgyhogy ha már lyukra futottam a két jól hangzó, de annál körülményesebb kedvencemmel, csak nekiállok annak a malackatranszportnak, hogy kicsit feldobjam a csajok hétvégi randalírozását, amikor végre kint szaladgálhatnak a lakásban :)

Kiindulásképpen nézzük, mi minden található végre az asztalon:

asztal.jpg

Akkor kezdjük azzal, hogy szétszedem a nagy lelkesedésben összecsavarozott autóalapot, mert szép, szép, de motor nélkül legfeljebb csak tologatni jó. Közben elgondolkodtam, hogy mégis melyik ötletemet próbáljam megvalósítani: a vonalkövető, fényre mozgó, távirányítható vagy az akadályérzékelő verzióját, de úgy döntöttem, hogy először hozzáforrasztom a jumper wire-t a motorvezérlővel, azután attól függően, hogy mennyi idegszálam marad meg, rákeresek az ötleteim programozására, és amelyik a legkevésbé tűnik elrettentőnek, az nyer.

Megérkezett a vadiúj forrasztókészlet, ahhoz képest, hogy belekerült nagyjából hatezer forintba, baromira jó, sokkal egyszerűbb vele forrasztani, ráadásul pillanatok alatt éri el az üzemi hőmérsékletet :)

Én mondjuk simán hozzáforrasztottam volna a jumper wire pint a kis kampóhoz, de ML javaslatára - hogy nézzen már ki valahogy - inkább levágtam a végét és a lepucérított vezetékkel csináltam. Nyilván nem én lettem volna, ha két fiú-fiú jumper wire helyett nem fiú-lányt forrasztottam volna hozzá a motorhoz, úgyhogy azt a kettőt még ki kellett cserélnem utólag.

Ha azt leszámítjuk, hogy a kézremegésem miatt össze-vissza égettem az autót is (még picit szoknom kell a finom mozdulatokat...), a végeredmény a tanácsoknak (köszi, Vili! :)), a nagyítónak és az új forrasztónak köszönhetően szerintem gyönyörű lett, de én elfogult vagyok :D

forrasztas.jpg

És ami a lényeg, nem csak szépek lettek a forrasztások, de még jók is, amit videón meg is örökítettem :)

És ha már ilyen jól állunk, akkor megkeresem az ArduinoMega-t, mert a kisebb már nem biztos, hogy kényelmes lenne hozzá, összepasszintom a motorvezérlővel, aztán keresek valami jó programot ahhoz, hogy le tudjuk tesztelni a működését, mielőtt a nagyobb projektbe belevágok. 

Szerencsére mindent feliratoznak az alkatrészeken, mint a moziban, úgyhogy csak ki kellett egyengetni a (szállítás során kicsit elgörbült) pineket a motorvezérlőn, és beszuszakolni az ArduinoMega megfelelő helyére. 

pinek.jpg

Mint a borsó meg a héja :)

pinek_a_helyukon2.jpg

Még annyi dolgom volt ezzel a résszel, hogy az autó motorjait hozzákössem a vezérlőhöz és az elemhez, utána pedig USB-vel a laptophoz:

car_wired2.jpg

És akkor nézzük, mi van ehhez, amivel mozgásra tudom bírni az autót.

Az Adafruit oldala megint a legmegbízhatóbb barátom lett, ami a programozást illeti, itt meg is található a program, amivel tesztelni tudtam a kisautót. Először ugyan a frissebb verzióval próbálkoztunk (a linket az oldal tartalmazza), de ezzel a régebbivel hajlandó csak működni.

Először is át kellett állítani az Arduino-t a Mega verzióra (nem a Mega ADK, hanem a sima Mega), a portot most nem kellett piszkálni:

board.jpg

Utána le kell tölteni a library-t és követni a hozzá tartozó utasításokat:

library.JPG

Ha a *.cpp és a *.h fájlok a megfelelő folderben vannak, jön a programozás.

Először meg kell idézni a library-ból a *.h fájlt, utána következik a motorok (kerekek) létrehozása. Úgy neveztem el őket, hogy épp melyik oldal első vagy hátsó kereke van a motorhoz kötve (pl. *_rf a right front, azaz jobb első kerék).

A setup a serial monitort tartalmazza először, hogy meg lehessen nézni a program futását működés közben, és utána következik a sebesség meghatározása (maximum sebesség 255; a 200 is már egész gyors). Sajna csak a 9V elemmel és az USB-vel egyszerre tud menni így, úgyhogy vagy a sebességet kellene csökkenteni ahhoz, hogy elvigye csak az elem, vagy pedig egy nagyobb teherbírású akksi kell hozzá...

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
#include "AFMotor.h"

AF_DCMotor motor_rf(1, MOTOR12_64KHZ); // create motor #1, 64KHz pwm
AF_DCMotor motor_lf(2, MOTOR12_64KHZ); // create motor #2, 64KHz pwm
AF_DCMotor motor_lr(3, MOTOR12_64KHZ); // create motor #3, 64KHz pwm
AF_DCMotor motor_rr(4, MOTOR12_64KHZ); // create motor #4, 64KHz pwm

void setup() {
  Serial.begin(9600);           // set up Serial library at 9600 bps
  Serial.println("Motor test!");
  
  motor_rf.setSpeed(200);     // set the speed to 200/255
  motor_rr.setSpeed(200);     // set the speed to 200/255
  motor_lr.setSpeed(200);     // set the speed to 200/255
  motor_lf.setSpeed(200);     // set the speed to 200/255


Utána a "for" ciklusba tettem a kerekek mozgatását, mert a teszteléshez azt szerettem volna elérni, hogy ötször fusson le a program (i=5), aztán álljon meg.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
for (int i=0; i<5; i++){
  
Serial.print("tick");
  
  motor_rf.run(FORWARD);      // turn it on going forward
  motor_rr.run(FORWARD);      // turn it on going forward
  motor_lf.run(FORWARD);      // turn it on going forward
  motor_lr.run(FORWARD);      // turn it on going forward
  delay(1000);

  Serial.print("tack");
  motor_rf.run(BACKWARD);     // the other way
  motor_rr.run(BACKWARD);     // the other way
  motor_lf.run(BACKWARD);     // the other way
  motor_lr.run(BACKWARD);     // the other way
  delay(1000);
  
  Serial.print("tock");
  motor_rf.run(RELEASE);      // stopped
  motor_rr.run(RELEASE);      // stopped
  motor_lf.run(RELEASE);      // stopped
  motor_lr.run(RELEASE);      // stopped
  delay(1000);
  }
}


És maga a program ennyi is volt, a sok várakozást követően a mű első része megszületett és működik, amit az alábbi, megszokott remek minőségű videóval prezentálok :)

A teljes program itt megtekinthető.

E.

A bejegyzés trackback címe:

https://nemertekalovakhozdeazertvanegy.blog.hu/api/trackback/id/tr1514008632

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Viliavereb 2018.06.05. 15:12:39

Szia!
Milyen forrasztót vettél? Nekem is kellene valami jobb.
A régi Weller pákám sajnos tönkrement, újra meg nem telik.
Van egy Arduinos magyar Facebook csoport, ha még nem vagy tag, nem akarsz csatlakozni?
A forrasztások tényleg sokkal jobbak lettek!

hahópihehh 2018.06.05. 22:08:38

ő a forrasztó, amúgy télleg nagyon tuti ahhoz képest, h mennyibe kerül:

www.banggood.com/YIHUA-908D-220V-LED-Digital-Display-Soldering-
Station-Soldering-Iron-Kit-p-1059873.html?rmmds=search&cur_warehouse=CN

jóval egyszerűbb vele dolgozni, a hőmérséklet beállítása meg külön jópont :)

persze, megnézném a csoportot, ha megadod a nevét, köszi :)

Viliavereb 2018.06.06. 10:36:24

A páka azóta nincs fent. -:(
Magyar Arduino csoport nem titkos, én is kereséssel találtam rá.

hahópihehh 2018.06.06. 19:46:18

pfff, nem, csak béna voltam, és sikerült kettétörnöm még a linket is :D remélem, most jól átmegy, ha nem, akkor csak szedd ki belőle a felesleges sortöréseket :)

www.banggood.com/YIHUA-908D-220V-LED-Digital-Display-Soldering-Station-Soldering-Iron-Kit-p-1059873.html?rmmds=search&cur_warehouse=CN
süti beállítások módosítása