Unsaon paghimo og simple nga robot

Unsaon Paghimo og Yano nga Robot

Ang paghimo og simpleng robot usa ka makalingaw nga paagi sa pagkat-on bahin sa electronics, basic mechanics, ug programming. Daghang tawo ang naghunahuna nga ang mga robot kinahanglan nga mahal ug komplikado, apan mahimo kitang magsugod sa gagmay nga mga proyekto nga dali ra i-assemble sa balay. Niini nga artikulo, maghimo kita og simpleng robot nga makalikay sa mga babag gamit ang ultrasonic sensors. Kini nga robot makalakaw sa unahan ug awtomatikong molingi kung makamatikod kini og butang sa atubangan niini. Kini nga proyekto angay alang sa mga nagsugod , estudyante, o bisan kinsa nga gusto magsugod sa pagkat-on sa robotics.

1. Sabta ang konsepto sa mga simpleng robot

Sa kinatibuk-an, ang mga robot adunay tulo ka pangunang sangkap: ang utok (controller), ang mga sentido (sensor), ug ang mga kaunuran (actuators). Niini nga proyekto:

– Kontroler: Arduino Uno (o compatible)
– Sensor: HC-SR04 ultrasonic sensor para sa pagsukod sa distansya
– Actuator: DC motor nga nagpadagan sa mga ligid
– Drayber sa motor: L298N (o L293D) nga drayber sa motor aron ang motor makontrol sa Arduino

Kon mabasa sa sensor ang distansya sa atubangan sa robot ug ang distansya duol ra kaayo, ang Arduino momando sa motor driver sa pag-usab sa direksyon sa paglihok, pananglitan pagliko sa tuo o wala.

2. Mga himan ug materyales nga gikinahanglan

Ania ang lista sa mga kasagarang gigamit nga mga sangkap nga dali ra makit-an sa mga tindahan sa elektroniko o mga merkado:

1. Arduino Uno (1 ka piraso)
2. Drayber sa motor nga L298N (1 ka piraso)
3. HC-SR04 ultrasonic sensor (1 ka piraso)
4. DC motor + gearbox ug mga ligid (2 ka piraso) para sa 2-wheel robot (differential drive)
5. Ligid nga pangbalanse (1 ka piraso) gamay nga ligid nga pangbalanse sa atubangan o likod
6. Mga Baterya (pananglitan 2×18650 o 7,4V pack) o 6xAA, sumala sa panginahanglan sa motor
7. Tsasis sa robot (mapalit nga andam na o hinimo gikan sa acrylic/plywood)
8. Mga kable sa jumper (lalaki-babaye ug lalaki-lalaki)
9. On/off switch (opsyonal, apan makatabang kaayo)
10. Gamay nga breadboard (opsyonal)
11. Mga bolt, nuts, screwdriver ug hot glue kon gikinahanglan

Kon gusto ka og mas simple pa (nga walay ultrasonic sensors), mahimo kang maghimo og "line follower" robot nga adunay line sensors, apan ang mga bersyon sa paglikay sa babag kasagarang mobati nga mas "buhi" tungod kay motubag kini sa mga butang sa ilang atubangan.

3. Pagdisenyo sa tsasis sa robot

Ang tsasis mao ang bayanan diin gibutang ang tanang mga sangkap. Mahimo kang mogamit og andam nang chassis kit o maghimo sa imong kaugalingon gikan sa mga gaan nga materyales sama sa acrylic, PVC, o nipis nga kahoy. Ang prinsipyo mao ang:

– I-mount ang duha ka DC motor sa wala ug tuo nga kilid.
– I-instalar ang mga ligid sa motorsiklo.
– Pagdugang og caster wheel isip balancer aron mahimong lig-on ang robot.
– Ibutang ang baterya sa posisyon nga dili makapakiling sa robot.
– Ang Arduino ug mga motor driver kinahanglan ibutang sa ibabaw para dali ra makuha.

Siguruha nga ang kable dili mobitay aron dili kini masangit sa mga ligid.

4. Sukaranan nga dayagram sa mga kable

Ania ang kinatibuk-ang konsepto sa koneksyon (ang mga pin mahimong ipasibo):

a) Motor ngadto sa drayber nga L298N
– Wala nga motor para mo-output og OUT1 ug OUT2
– Tuo nga motor para sa output sa OUT3 ug OUT4

b) L298N Driver para sa Arduino
– IN1, IN2 para sa wala nga motor ngadto sa pipila ka Arduino digital pins
– IN3, IN4 para sa tuo nga motor ngadto sa pipila ka Arduino digital pins
– Ang ENA ug ENB (enable) mahimong ikonektar sa mga Arduino PWM pin aron makontrol ang speed (opsyonal). Kung dili, ang ubang L298N modules adunay enable jumper aron ang motor modagan sa full speed.

c) Sensor sa HC-SR04 ngadto sa Arduino
- VCC ngadto sa 5V nga Arduino
– GND ngadto sa GND Arduino
– TRIG ngadto sa digital pin sa Arduino
– ECHO ngadto sa Arduino digital pin

d) Gahom
Ang motor nagkinahanglan og mas daghang kuryente kaysa sa mahatag sa Arduino. Busa:
– Ang pangunang baterya moadto sa motor driver (+12V ug GND terminals sa L298N).
– Ang Arduino pwede pud paandaron gikan sa baterya (pinaagi sa VIN) o lahi nga power bank/USB.
– Ground: Kinahanglan nga konektado ang battery/driver GND ug ang Arduino GND aron magpabiling lig-on ang control signal.

Ang labing komon nga sayop sa mga bag-o mao ang pagkalimot sa pag-andam sa GND, mao nga ang robot molihok nga dili regular.

5. Ang lohika sa pagtrabaho sa robot nga naglikay sa babag

Ang robot motrabaho gamit ang yano nga proseso:

1. Basaha ang gilay-on gikan sa ultrasonic sensor.
2. Kon ang distansya > threshold (pananglitan 20 cm), ang robot mopadayon.
3. Kon ang gilay-on ≤ 20 cm, ang robot mohunong sa makadiyot.
4. Ang robot moatras gamay ug dayon molingi (pananglitan sa tuo) sulod sa pipila ka gatos ka milisegundo.
5. Basaha pag-usab ang gilay-on ug balika.

Uban niini nga sumbanan, ang robot daw "naglikay" sa mga babag, bisan kung dili kini mopili sa labing kaayo nga agianan.

6. Yano nga ehemplo sa Arduino code

Ania ang usa ka ehemplo sa batakang code. Mahimo nimong ipasibo ang mga pin aron mohaom sa imong circuit:

"`cpp
ipasabot ang TRIG 8
ipasabot ang ECHO 9

// Wala nga motor
ipasabot ang IN1 2
ipasabot ang IN2 3

// Tuo nga motor
ipasabot ang IN3 4
ipasabot ang IN4 5

taas nga gidugayon;
gilay-on sa sulod;

int readDistance() {
digitalWrite(TRIG, LOW);
paglanganMikrosegundo(2);
digitalWrite(TRIG, HIGH);
paglanganMikrosegundo(10);
digitalWrite(TRIG, LOW);

gidugayon = pulseIn(ECHO, TAAS);
int cm = gidugayon 0.034 / 2;
balik nga sentimetro;
}

walay sulod nga unahan() {
digitalWrite(IN1, TAAS);
digitalWrite(IN2, LOW);
digitalWrite(IN3, TAAS);
digitalWrite(IN4, LOW);
}

walay sulod nga baliktad() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, TAAS);
digitalWrite(IN3, LOW);
digitalWrite(IN4, TAAS);
}

void liko sa tuo() {
digitalWrite(IN1, TAAS);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, TAAS);
}

walay sulod nga hunong() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
}

wala’y pulos nga pag-setup () {
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);

pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);

Serial.begin (9600);
}

void loop () {
distansya = readDistance();
Serial.println(distansya);

kon (distansya > 20) {
ipadayon();
} Laing {
hunong();
paglangan (200);
baliktad();
paglangan (300);
hunong();
paglangan (200);
liko sa tuo();
paglangan (400);
hunong();
}

paglangan (50);
}
".

Kini nga code mao ang pinakasimple nga bersyon. Kung kanunay nga mag-crash ang robot, mahimo nimong dugangan ang threshold ngadto sa 25–30 cm o dugangan ang oras sa pagtuyok.

7. Pagsulay ug pag-tune

Kung nahuman na ang pag-assemble sa robot, buhata ang sunod-sunod nga pagsulay:

1. Sulayi una ang motor: padagana ang forward/reverse function aron masiguro nga ang mga ligid nagtuyok sa saktong direksyon.
2. Sulayi ang ultrasonic sensor: tan-awa ang mga resulta sa distansya sa Arduino IDE Serial Monitor.
3. I-combine ang sistema: padagana ang tibuok programa ug obserbahi ang reaksyon sa robot.

Kon ang robot nagtuyok o naglihok paatras samantala nga kini angay unta nga moabante, kinahanglan nimong ilisan ang mga kable sa motor o balihon ang lohika sa IN1-IN2 (ug IN3-IN4).

8. Kasagarang mga problema ug solusyon

Pipila ka mga babag nga kanunay motumaw:

– Dili gyud molihok ang robot: susiha ang baterya, susiha ang driver sa motor, siguroha nga aktibo ang enable jumper.
– Ang Arduino mo-reset samtang nagdagan ang motor: dili igo ang suplay sa kuryente o kasaba sa motor. Sulayi paggamit og lahi nga baterya para sa Arduino, pagdugang og capacitor, ug pag-ayo sa ground.
– Dili lig-on ang pagbasa sa distance sensor: siguroha nga ang sensor nag-atubang nga tul-id, ipahilayo kini sa sobra nga pag-uyog, ug siguroha nga ang kable dili luag.
– Ang robot “natanggong” sa usa ka suok: pagdugang og random nga logic sa pagliko o paggamit og mga servo aron ibalhin ang mga sensor aron sila “makatan-aw” sa wala ug tuo.

9. Mga ideya sa pag-uswag human sa kalampusan

Kung ang batakang robot andam na gamiton, mahimo nimo kini i-upgrade sa usa ka butang nga mas makapaikag:

– Pagdugang og mga servo aron ibalhin ang mga ultrasonic sensor aron ang robot makapili sa labing maayong agianan.
– Gidugang ang Bluetooth control (HC-05) aron makontrol kini gikan sa mobile phone.
– Paggamit og mga line sensor aron makahimo og line follower robot.
– I-adjust ang PWM speed para sa mas hapsay nga paglihok.
– Pagdugang og buzzer o LED isip timailhan kon makamatikod og babag.

Konklusyon

Ang paghimo og simpleng robot dili kinahanglan nga lisod. Gamit ang Arduino, DC motor, motor driver, ug ultrasonic sensor, makahimo ka og robot nga awtomatikong makalihok ug makalikay sa mga babag. Ang yawe sa kalampusan mao ang hapsay nga mga wiring, igong mga kahinguhaan, ug hingpit nga pagsulay. Kung nahuman na nimo kini nga proyekto, mas andam ka na sa pag-atubang sa mas komplikado nga mga proyekto sa robotics, sama sa usa ka smart robot nga nakabase sa camera o usa nga makasunod sa mga butang.

Kon gusto nimo, makatabang ko nimo sa paghimo og mas detalyado nga wiring diagram base sa mga pin nga imong pilion, o i-adjust ang code aron ang robot makaliko sa wala/tuo nga random ug mahimong mas "intelihente".

Pagbilin og komento