Essendo un novellino della materia, vedere gironzolare per casa il mio rover mi ha dato qualche soddisfazione (e anche una certa dose di sorpresa).
Devo trovargli un nome.
Qui il video che descrive un pomeriggio di puro divertimento:
Assembly List
Label | Part Type | Properties |
---|---|---|
Arduino1 | Arduino | processor ATmega; variant Arduino UNO R3 |
C1 | Ceramic Capacitor | package 100 mil [THT, multilayer]; capacitance 0.1µF; voltage 6.3V |
C2 | Ceramic Capacitor | package 100 mil [THT, multilayer]; capacitance 0.1µF; voltage 6.3V |
D1 | Rectifier Diode | package 300 mil [THT]; tipo Rectifier; part number 1N4001 |
D2 | Rectifier Diode | package 300 mil [THT]; tipo Rectifier; part number 1N4001 |
J1 | Basic Servo | part number Goteck GS-9025MG Micro Analog Metal-Gear Servo 9g |
LED1 | Green LED – 3mm | package 3 mm [THT]; leg yes; colore Green (555nm) |
LED2 | Green LED – 3mm | package 3 mm [THT]; leg yes; colore Green (555nm) |
M1 | DC Motor | |
M2 | DC Motor | |
Q1 | NPN-Transistor | package TO92 [THT]; tipo NPN; part number Transistor BC337-40 |
Q2 | NPN-Transistor | package TO92 [THT]; tipo NPN |
R1 | 10k Ω Resistor | package THT; tolerance ±5%; bands 4; resistenza 10kΩ; pin spacing 400 mil |
R2 | 330 Ω Resistor | package THT; tolerance ±5%; bands 4; resistenza 330Ω; pin spacing 400 mil |
R3 | 10k Ω Resistor | package THT; tolerance ±5%; bands 4; resistenza 10kΩ; pin spacing 400 mil |
R4 | 330 Ω Resistor | package THT; tolerance ±5%; bands 4; resistenza 330Ω; pin spacing 400 mil |
VCC1 | Battery block 9V | voltage 9V |
VCC2 | Battery block 9V | voltage 9V |
X1 | Sonar |
Shopping List
Amount | Part Type | Properties |
---|---|---|
3 | DC Motor | |
2 | Ceramic Capacitor | package 100 mil [THT, multilayer]; capacitance 0.1µF; voltage 6.3V |
2 | Green LED – 3mm | package 3 mm [THT]; leg yes; colore Green (555nm) |
2 | Rectifier Diode | package 300 mil [THT]; tipo Rectifier; part number 1N4001 |
2 | 10k Ω Resistor | package THT; tolerance ±5%; bands 4; resistenza 10kΩ; pin spacing 400 mil |
2 | 330 Ω Resistor | package THT; tolerance ±5%; bands 4; resistenza 330Ω; pin spacing 400 mil |
1 | NPN-Transistor | package TO92 [THT]; tipo NPN |
1 | NPN-Transistor | package TO92 [THT]; tipo NPN; part number Transistor BC337-40 |
1 | Basic Servo | part number Goteck GS-9025MG Micro Analog Metal-Gear Servo 9g |
1 | Arduino | processor ATmega; variant Arduino UNO R3 |
2 | Battery block 9V | voltage 9V |
Qui lo schema per le connessioni:
Non è da escludere che ci sia qualcosa di non proprio corretto, ma il tutto funziona. Qui il codice PROCESSING banalissimo:
//———— MotorDC #define motorPinR 9 // define the pin the motor is connected to #define motorPinL 10 // (if you use pin 9,10,11 or 3you can also control speed) //———— Servo // Goteck GS-9025MG Micro Analog Metal-Gear Servo 9g #include <Servo.h> Servo myservoH; #define servoPosH 0 #define servoPosHZero 75 int servoPinH=4; //———— Ultrasonic sensor // Ultrasonic module distance sensor HC-SR04 #include <Ultrasonic.h> Ultrasonic ultrasonic(11,12); //int TP, int EP int distanceR; int distanceL; int distance;void setup() { // — setup Serial Serial.begin(9600); // — setup MotorDC pinMode(motorPinR, OUTPUT); pinMode(motorPinL, OUTPUT); // — Setup Servo myservoH.attach(servoPinH); myservoH.write(servoPosHZero); // —————- randomSeed(analogRead(3)); // delay(2000); } void loop() void GetDistance() void Go() void Run() void Stop() void TurnL(int T) void TurnR(int T) void TurnRandom(int T) void GetDirection() |
Ci sono alcuni parametri cablati nel codice che possono essere variati per tarare il comportamento del rover. Se volete spiegazione (ma soprattutto se volete darmi qualche dritta) scrivete nei commenti.
Si tratta ovviamente di un primo prototipo: il secondo avrà la retromarcia, due sensori di luminosità ed un display LCD…!
Tutto partirà dal monte Fuji..