Skip to content

Instantly share code, notes, and snippets.

@felipecabargas
Last active December 29, 2015 16:59
Show Gist options
  • Save felipecabargas/7701275 to your computer and use it in GitHub Desktop.
Save felipecabargas/7701275 to your computer and use it in GitHub Desktop.
LegoMindstorms source code for the homework 1.

Introduccion a la Ingenieria - Prof. Marcelo Mendoza

  • Alfonso Cabargas M. / ROL USM: 201373531-2
  • John Bidwell B. / ROL USM: 201373521-5
#pragma config(Sensor, S1, soundSensor, sensorSoundDB)
#pragma config(Sensor, S3, lightSensor, sensorLightActive)
#pragma config(Sensor, S4, sonarSensor, sensorSONAR)
#pragma config(Motor, motorA, gripperMotor, tmotorNormal, PIDControl, encoder)
#pragma config(Motor, motorB, rightMotor, tmotorNormal, PIDControl, encoder)
#pragma config(Motor, motorC, leftMotor, tmotorNormal, PIDControl, encoder)
motor[motorB] = 0; motor[motorC] = 0;
/* Triangle Source Code */
void triangle(){
motor[motorB] = 100; motor[motorC] = 100; wait1Msec(2000);
motor[motorB] = 0 ; motor[motorC] = 0 ; wait1Msec(500) ;
motor[motorB] = -100; motor[motorC] = 50 ; wait1Msec(667) ;
motor[motorB] = 100; motor[motorC] = 100; wait1Msec(2000);
motor[motorB] = 0 ; motor[motorC] = 0 ; wait1Msec(500) ;
motor[motorB] = -100; motor[motorC] = 50 ; wait1Msec(667) ;
motor[motorB] = 100; motor[motorC] = 100; wait1Msec(2000);
motor[motorB] = 0 ; motor[motorC] = 0 ; wait1Msec(500) ;
motor[motorB] = -100; motor[motorC] = 50 ; wait1Msec(750) ;
}
/* Square Source Code*/
void square(){
motor[motorB] = 100; motor[motorC] = 100; wait1Msec(2000);
motor[motorB] = 0 ; motor[motorC] = 0 ; wait1Msec(500) ;
motor[motorB] = -50; motor[motorC] = 50 ; wait1Msec(950) ;
motor[motorB] = 100; motor[motorC] = 100; wait1Msec(2000);
motor[motorB] = 0 ; motor[motorC] = 0 ; wait1Msec(500) ;
motor[motorB] = -50; motor[motorC] = 50 ; wait1Msec(950) ;
motor[motorB] = 100; motor[motorC] = 100; wait1Msec(2000);
motor[motorB] = 0 ; motor[motorC] = 0 ; wait1Msec(500) ;
motor[motorB] = -50; motor[motorC] = 50 ; wait1Msec(950) ;
motor[motorB] = 100; motor[motorC] = 100; wait1Msec(2000);
motor[motorB] = 0 ; motor[motorC] = 0 ; wait1Msec(500) ;
motor[motorB] = -50; motor[motorC] = 50 ; wait1Msec(950) ;
motor[motorB] = 0 ; motor[motorC] = 0 ;
}
/* Circle Source Code */
void circle(){
motor[motorB] = 0 ; motor[motorC] = 0 ; wait1Msec(500);
motor[motorB] = 50 ; motor[motorC] = 100; wait1Msec(7645);
motor[motorB] = 0 ; motor[motorC] = 0 ;
}
task main()
{
while (true)
{
int applauses = 0;
ClearTimer(T1);
wait1Msec(1000);
while (time1[T1] < 2000)
{
if (SensorValue[soundSensor] > 70)
{
applauses++;
wait1Msec(500);
ClearTimer(T1);
}
}
if (applauses == 1)
{
square();
}
else if (applauses == 2)
{
triangle();
}
else if (applauses == 3)
{
circle();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment