Lego mindstorm nxt alex sanchez
Transcript of Lego mindstorm nxt alex sanchez
Lego Mindstorm NXT
Presentació del bloc NXT
El bloc NXT es el cervell del robot.
Consta de 3 connexions per a motors y 4 connexions per a diferents sensors.
Motors
Motor: és la part mecànica del robot que el permet moure’s en l’espai.Acoblat d’una manera o una altre es pot utilitzar com a braç per a glopejar un objecte.
Una avantatge que tenen aquestos motors es que es poden controlar amb graus.
Motor vist desde l’exterior
Motor vist desde l’interior
MotorsProgramació
Els motors es comanden amb el programa mitjançans les següents ordres:
- Per tirar endavant:
OnFwd(OUT_motor que es vol activar, potencia del motor);
Exemple:OnFwd(OUT_AC,50);
- Per tirar enrera;
OnRev(OUT_motor que es vol activar, potencia del motor);
Exemple:OnRev(OUT_AC,50);
Sensors
Sensor ultrasons: Aquest sensor funciona mesurar el temps que tarda al anar i tornar una senyal ultrasònica.
Si el temps es gran l’objecte esta lluny del robot, si el temps es petit vol dir que l’objecte es a prop del robot. Programació:
SetSensorLowspeed(IN_4); SetSensorLowspeed, es refereix al sensor que estem utilitzan, en aquest cas el sensor d’ultrasons
IN_4, vol dir la entrada a la que esta connectat sensor.
Sensors
Exemple d’un programa amb el sensor d’ultrasons.
task main(){SetSensorLowspeed(IN_4);
while(true){
if (SensorUS(IN_4) > LLINDAR) // detecta obstacle a més de 40cmOnFwd(OUT_AC,PW); // motors AC cap endevant
elseOnRev(OUT_A,PW);
}
}
Sensors Sensor de contacte: Aquest sensor li dona al
robot el sentit del tacte. El robot detecta quan s'està pressionant o quan s’està alliberant
Programació:SetSensorTouch(IN_1); SetSensorTouch, es refereix al sensor que estem utilitzan,
en aquest cas el sensor de contacte IN_1, vol dir la entrada a la que esta connectat sensor.
Sensors Exemple d’un programa amb el sensor de contacte:task main (){
SetSensor(SENSOR_1, SENSOR_TOUCH); // EL TIPUS DE SENSOR A SELECCIONAROnFwd (OUT_AC,25);while (true){
if(SENSOR_1==1)// HASTA QUE EL SENSOR SEA 1{
OnRev(OUT_AC,25); // SE APAGA MOTOR A Wait(1000);OnFwd(OUT_A,25);Wait(1000);OnFwd(OUT_AC,25);
}}}
Sensors Sensor de llum: Aquest sensor permet al robot
distingir entre claretat i foscor distingir diferents colors segons la intensitat de la llum reflectida pels objectes segons el seu color.
Programació: SetSensorLight (IN_3); SetSensorLight, es refereix al sensor que estem utilitzan,
en aquest cas el sensor de llum IN_3, vol dir la entrada a la que esta connectat sensor
Sensors Exemple de programa amb el sensor de llum:
task main (){SetSensorLight (In_3) ;
OnFwd( OUT_AC, 25);Until ( SENSOR_3 <= 30);Off(OUT_AC)
}
Aquest Programa el que fa es tirar endavant i rep que la llum es igual o mes petita que 30, el robot s’atura.
Sensors Sensor de so: Aquest sensor nomes detecta el la quantitat
de so, no detecta el tipus de so o modulació que donem a un so, nomes els decibels que proporcionem.
Programació:SetSensorSound (IN_2); SetSensorLight, es refereix al
sensor que estem utilitzan, en aquest cas el sensor de llum
IN_3, vol dir la entrada a la que esta connectat sensor
Sensors Exemple de programa amb el sensor de llum:
task main (){ SetSensorSound(IN_2);
OnFwd(OUT_AC,25);until (SENSOR_2 > 50);Off(OUT_AC);
}
Aquest Programa el que fa es tirar endavant i quan sent un sorollo mes gran de 50 s’atura.
Altres Funcions Altres tipus de funcions:OUT = Sortides, nomes motorsMotors = A, B o CX= potència que es vol donar al motor, en tant per cent
1. OnFwd/OnRev(OUT_ motor a seleccionar, X);-la acció OnFwd vol dir que activem el motor endavant.-la acció OnRev vol dir que activem el motor endarere.
Exemple: OnFwd(OUT_A,80);
- Aquesta acció vol dir que activem el motor A endavant en un 80% de la seva potencia.
Altres Funcions
2. defineAquesta funció serveix per definir variables
3. Wait ( temps d’espera en milisegons);Exemple: Wait (4000);- Aquesta acció vol dir esperi en el estat que esta el temps que
l’hi indiquem nosaltres
4. Off(OUT_motors a seleccionar)Exemple: Off(OUT_A)Apaga el motor A
Altres Funcions 5. While (true) - per repetir accions.
6. IfAquesta acció serveix perque el robot si no pot fer una acció faci una
altra, o en el cas dels sensors si detecta el que se l’hi ordena que faci una acció o si no detecta que faci una altra acció.
If (SENSOR_1==1)// HASTA QUE EL SENSOR SEA 1{Acció a fer;} else { Acció a fer ; }