Skip to content

Instantly share code, notes, and snippets.

@RQF7
Created September 20, 2021 04:23
Show Gist options
  • Save RQF7/dc8d93615f64a535c3b18849f5751d57 to your computer and use it in GitHub Desktop.
Save RQF7/dc8d93615f64a535c3b18849f5751d57 to your computer and use it in GitHub Desktop.
Autonomus car with Cubelets
#include "cubelet.h"
/**
* Sensor izquierdo: 88467
* Sensor centro: 88373
* Sensor derecho: 83755
*/
void setup()
{
block_value = 0;
}
void loop()
{
uint8_t centro = get_block_value(828618);
uint8_t izquierda = get_block_value(83755);
uint8_t derecha = get_block_value(88373);
/* Centro ocupado. */
if (centro > 100)
{
/* Izquierda ocupada. */
if (izquierda < derecha)
{
/* Girar a la derecha. */
set_drive_direction(BACKWARD);
set_drive(255);
}
/* Izquierda libre. */
else
{
/* Girar a la izquierda. */
set_drive_direction(FORWARD);
set_drive(255);
}
}
/* Sin obstáculos al centro. */
else
{
if (izquierda > 128 || derecha > 128)
{
if (izquierda > derecha)
{
/* Girar a la derecha. */
set_drive_direction(BACKWARD);
set_drive(255);
}
else
{
/* Girar a la izquierda. */
set_drive_direction(FORWARD);
set_drive(255);
}
}
else
{
/* Avanzar. */
set_drive_direction(FORWARD);
set_drive(255);
}
}
wait(100);
}
#include "cubelet.h"
/**
* Sensor izquierdo: 88467
* Sensor centro: 88373
* Sensor derecho: 83755
*/
void setup()
{
block_value = 0;
}
void loop()
{
uint8_t centro = get_block_value(828618);
uint8_t izquierda = get_block_value(83755);
uint8_t derecha = get_block_value(88373);
/* Centro ocupado. */
if (centro > 100)
{
/* */
if (izquierda < derecha)
{
/* Girar a la derecha. */
set_drive_direction(FORWARD);
set_drive(128);
}
/* Izquierda libre. */
else
{
/* Girar a la izquierda. */
set_drive_direction(FORWARD);
set_drive(128);
}
}
/* Sin obstáculos al centro. */
else
{
if (izquierda > 128 || derecha > 128)
{
if (izquierda > derecha)
{
/* Girar a la derecha. */
set_drive_direction(FORWARD);
set_drive(128);
}
else
{
/* Girar a la izquierda. */
set_drive_direction(FORWARD);
set_drive(128);
}
}
else
{
/* Avanzar. */
set_drive_direction(FORWARD);
set_drive(255);
}
}
wait(100);
}
#include "cubelet.h"
/**
* Sensor izquierdo: 83755
* Sensor centro: 828618
* Sensor derecho: 88373
*/
void setup()
{
block_value = 0;
}
void loop()
{
uint8_t centro = get_block_value(828618);
uint8_t izquierda = get_block_value(83755);
uint8_t derecha = get_block_value(88373);
/* Centro ocupado. */
if (centro > 100)
{
/* Izquierda ocupada. */
if (izquierda < derecha)
{
/* Girar a la derecha. */
set_drive_direction(FORWARD);
set_drive(255);
}
/* Izquierda libre. */
else
{
/* Girar a la izquierda. */
set_drive_direction(BACKWARD);
set_drive(255);
}
}
/* Sin obstáculos al centro. */
else
{
if (izquierda > 128 || derecha > 128)
{
if (izquierda > derecha)
{
/* Girar a la derecha. */
set_drive_direction(FORWARD);
set_drive(255);
}
else
{
/* Girar a la izquierda. */
set_drive_direction(BACKWARD);
set_drive(255);
}
}
else
{
/* Avanzar. */
set_drive_direction(FORWARD);
set_drive(255);
}
}
wait(100);
}
@RQF7
Copy link
Author

RQF7 commented Sep 20, 2021

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment