<?xml version="1.0"?>
<rss version="2.0">
   <channel>
      <title>OBR - Nacional by Pedro Lucas</title>
      <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu</link>
      <description></description>
      <language>en-us</language>
      <pubDate>2024-09-07 18:30:25 UTC</pubDate>
      <lastBuildDate>2025-07-04 19:43:02 UTC</lastBuildDate>
      <webMaster>hello@padlet.com</webMaster>
      <image>
         <url></url>
      </image>
      <item>
         <title>Manual Robótica Artística </title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3107506412</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/00ff41da6fc6508b7f8e05223e95e6fd/2024_Manual_de_Regras_e_Instrucoes_Regional_Estadual_Robotica_Artistica__1_.pdf" />
         <pubDate>2024-09-07 18:30:25 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3107506412</guid>
      </item>
      <item>
         <title>ROBO 03</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3107506423</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/a0a05a40f18d06e2fe8eb5ef0606489a/codigo_completo_robo03.ino" />
         <pubDate>2024-09-07 18:30:25 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3107506423</guid>
      </item>
      <item>
         <title>ROBO 02</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3107506424</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/aa8d463e7e14d9af2f9c45fbb2e9d53f/codigo_completo_robo02.ino" />
         <pubDate>2024-09-07 18:30:25 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3107506424</guid>
      </item>
      <item>
         <title>ROBO 01</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3107506425</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/2abc8a38ff687e73cd452fa2dccad22f/codigo_completo_robo01.ino" />
         <pubDate>2024-09-07 18:30:25 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3107506425</guid>
      </item>
      <item>
         <title>passo 01 (FINALIZADO)</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108369907</link>
         <description><![CDATA[<p>inicialmente todos começam em fileira pra iniciar a danca </p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/190a5b176dc5a25ee8967ceb838e580a/image.png" />
         <pubDate>2024-09-08 22:52:44 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108369907</guid>
      </item>
      <item>
         <title>passo 2 (FINALIZADO)</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108373247</link>
         <description><![CDATA[<p>robos entrar em posicao</p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/dbb97efb64d145ee29f3d224af8531f8/image.png" />
         <pubDate>2024-09-08 22:59:47 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108373247</guid>
      </item>
      <item>
         <title>passo 3 (FINALIZADO)</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108373677</link>
         <description><![CDATA[<p>eu entrar em posição </p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/adb6dac85bc9ac98bae58f9237f25299/image.png" />
         <pubDate>2024-09-08 23:00:42 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108373677</guid>
      </item>
      <item>
         <title>passo 4 (FINALIZADO)</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108374864</link>
         <description><![CDATA[<p>danca em sincronia</p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/77c787b2942ed4c132a811280b415a76/image.png" />
         <pubDate>2024-09-08 23:02:21 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108374864</guid>
      </item>
      <item>
         <title>passo 5</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108375954</link>
         <description><![CDATA[<p>eu vou para tras e "chamo eles para frente"</p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/be05d5bd4712bb103fa56a3bfe9ea9ac/image.png" />
         <pubDate>2024-09-08 23:03:55 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108375954</guid>
      </item>
      <item>
         <title>passo 6</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108377523</link>
         <description><![CDATA[<p>passinho  do avião </p><p><a rel="noopener noreferrer nofollow" href="https://www.youtube.com/watch?v=AI2X-61zZd8">https://www.youtube.com/watch?v=AI2X-61zZd8</a></p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/1303abfc2ef04595aaff381ce3a2775d/image.png" />
         <pubDate>2024-09-08 23:07:13 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108377523</guid>
      </item>
      <item>
         <title>passso 7</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108393992</link>
         <description><![CDATA[<p>estatua, um danca os outros paradors, depois um descongela e volta na sincrnia</p>]]></description>
         <enclosure url="" />
         <pubDate>2024-09-08 23:31:57 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3108393992</guid>
      </item>
      <item>
         <title>passo 07</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3125213393</link>
         <description><![CDATA[<p>eu vou alinhar com os robôs e ficar de lado com eles</p><p><br/></p><p>nessa parte eu vou para frente e para trás com eles em sincronia</p><p><br/></p><p><a rel="noopener noreferrer nofollow" href="https://www.youtube.com/watch?v=AI2X-61zZd8">(min 1:46)  https://www.youtube.com/watch?v=AI2X-61zZd8</a></p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/690a0456c246a2f6b8c5fa00364ef254/image.png" />
         <pubDate>2024-09-18 09:12:42 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3125213393</guid>
      </item>
      <item>
         <title>passo 08</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3125217893</link>
         <description><![CDATA[<p>assim que finalizar o movimento acima eu e os robos vamos voltar para frente da plateia</p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/237ca33690d9297f53b7d6be6e62f335/image.png" />
         <pubDate>2024-09-18 09:15:32 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3125217893</guid>
      </item>
      <item>
         <title></title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3167186860</link>
         <description><![CDATA[<pre><code class="language-cpp">#include &lt;Wire.h&gt; 
#include &lt;LiquidCrystal_I2C.h&gt;
LiquidCrystal_I2C lcd(0X27,16,2);  

long randomNumber;      //Variable donde almacenaremos el numero aleatorio
int tiempo = 200; 

byte ojo_abierto1[8] = {
  B01000,
  B00100,
  B00010,
  B10001,
  B01011,
  B00110,
  B01110,
  B11100
};

byte ojo_abierto2[8] = {
  B01000,
  B00111,
  B11111,
  B11100,
  B10001,
  B00111,
  B01111,
  B11111
};
byte ojo_abierto3[8] = {
  B00010,
  B11100,
  B11111,
  B00111,
  B10001,
  B11100,
  B11110,
  B11111
};


byte ojo_abierto4[8] = {
  B00010,
  B00100,
  B01000,
  B10001,
  B11010,
  B01100,
  B01110,
  B00111
};

byte ojo_abierto5[8] = {
  B11100,
  B01110,
  B00111,
  B00011,
  B00001,
  B00000,
  B00000,
  B00000
};

byte ojo_abierto6[8] = {
  B11111,
  B01111,
  B00111,
  B10001,
  B11100,
  B11111,
  B00111,
  B00000
};

byte ojo_abierto7[8] = {
  B11111,
  B11110,
  B11100,
  B10001,
  B00111,
  B11111,
  B11100,
  B00000
};

byte ojo_abierto8[8] = {
  B00111,
  B01110,
  B11100,
  B11000,
  B10000,
  B00000,
  B00000,
  B00000
};




byte ojo_cerrado1[8] = {
  B00000,
  B00000,
  B00000,
  B00001,
  B00011,
  B00111,
  B01111,
  B11111
};

byte ojo_cerrado2[8] = {
  B00000,
  B00111,
  B11111,
  B11111,
  B11111,
  B11111,
  B11111,
  B11111
};

byte ojo_cerrado3[8] = {
  B00000,
  B11100,
  B11111,
  B11111,
  B11111,
  B11111,
  B11111,
  B11111
};

byte ojo_cerrado4[8] = {
  B00000,
  B00000,
  B00000,
  B10000,
  B11000,
  B11100,
  B11110,
  B11111
};

byte ojo_cerrado5[8] = {
  B11111,
  B01111,
  B00111,
  B01011,
  B10001,
  B00010,
  B00100,
  B01000
};

byte ojo_cerrado6[8] = {
  B11111,
  B11111,
  B11111,
  B11111,
  B11111,
  B11111,
  B00111,
  B01000
};

byte ojo_cerrado7[8] = {
  B11111,
  B11111,
  B11111,
  B11111,
  B11111,
  B11111,
  B11100,
  B00010
};

byte ojo_cerrado8[8] = {
  B11111,
  B11110,
  B11100,
  B11010,
  B10001,
  B01000,
  B00100,
  B00010
};


void setup() {
 lcd.init();     // configuramos el LCD de 16x2
 lcd.backlight();
 lcd.clear();
 randomSeed(analogRead(A0));    //Establecemos la semilla en un pin analogico 
}

    
void loop() {
    
   randomNumber = random(1,100);     //Genera un numero aleatorio entre 1 y 100
   delay(tiempo);
   if(randomNumber&gt;=55){
    ojos_abiertos();
   }
   else{
    ojos_cerrados();
   }
   
}

void ojos_abiertos() 
{
  lcd.createChar(1,ojo_abierto1);
  lcd.createChar(2,ojo_abierto2);
  lcd.createChar(3,ojo_abierto3);
  lcd.createChar(4,ojo_abierto4);
  lcd.createChar(5,ojo_abierto5);
  lcd.createChar(6,ojo_abierto6);
  lcd.createChar(7,ojo_abierto7);
  lcd.createChar(8,ojo_abierto8);

  lcd.setCursor(2,0);
  lcd.write(1);
  lcd.write(2);
  lcd.write(3);
  lcd.write(4);

  lcd.setCursor(2,1);
  lcd.write(5);
  lcd.write(6);
  lcd.write(7);
  lcd.write(8);

 
  lcd.setCursor(10,0);
  lcd.write(1);
  lcd.write(2);
  lcd.write(3);
  lcd.write(4);

  lcd.setCursor(10,1);
  lcd.write(5);
  lcd.write(6);
  lcd.write(7);
  lcd.write(8);
   
}

void ojos_cerrados() 
{
  lcd.createChar(1,ojo_cerrado1);
  lcd.createChar(2,ojo_cerrado2);
  lcd.createChar(3,ojo_cerrado3);
  lcd.createChar(4,ojo_cerrado4);
  lcd.createChar(5,ojo_cerrado5);
  lcd.createChar(6,ojo_cerrado6);
  lcd.createChar(7,ojo_cerrado7);
  lcd.createChar(8,ojo_cerrado8);

  lcd.setCursor(2,0);
  lcd.write(1);
  lcd.write(2);
  lcd.write(3);
  lcd.write(4);

  lcd.setCursor(2,1);
  lcd.write(5);
  lcd.write(6);
  lcd.write(7);
  lcd.write(8);

  
  lcd.setCursor(10,0);
  lcd.write(1);
  lcd.write(2);
  lcd.write(3);
  lcd.write(4);

  lcd.setCursor(10,1);
  lcd.write(5);
  lcd.write(6);
  lcd.write(7);
  lcd.write(8);
 
}</code></pre>]]></description>
         <enclosure url="" />
         <pubDate>2024-10-14 01:02:10 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3167186860</guid>
      </item>
      <item>
         <title>Qr code</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3198737762</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://www.canva.com/design/DAGVYGoOZuk/IWu8uWErDoxcBrnI-hqTPQ/edit?utm_content=DAGVYGoOZuk&amp;utm_campaign=designshare&amp;utm_medium=link2&amp;utm_source=sharebutton" />
         <pubDate>2024-11-03 00:59:14 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3198737762</guid>
      </item>
      <item>
         <title>código LCD </title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3198746807</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/da8f7633b336894aab5bfde4eea5b5b7/LCD_homem_andando.ino" />
         <pubDate>2024-11-03 01:37:33 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3198746807</guid>
      </item>
      <item>
         <title>Slide apresentação</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3199390039</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://www.canva.com/design/DAGVdb0zbus/j2iCUNtBAHQ3DlDmNkk_1A/edit?utm_content=DAGVdb0zbus&amp;utm_campaign=designshare&amp;utm_medium=link2&amp;utm_source=sharebutton" />
         <pubDate>2024-11-03 23:47:48 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3199390039</guid>
      </item>
      <item>
         <title>Codigo robo 01</title>
         <author></author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3202679391</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/2992139143/32551f682b36fb4766329282757b6d92/robo_01.txt" />
         <pubDate>2024-11-05 14:50:10 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3202679391</guid>
      </item>
      <item>
         <title>codigo robo 02 - sem sensor de som</title>
         <author></author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3202680525</link>
         <description><![CDATA[<p>esse é o código do robô 2 antes de colocarmos os sensores de som</p>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/2992139143/3f7830bd4a574f626c4bed8a41162945/robo_02.txt" />
         <pubDate>2024-11-05 14:50:45 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3202680525</guid>
      </item>
      <item>
         <title>robos 3d</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3205441196</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/21243560ceca75d29c420f3cf96bff2b/Copy_of_Fantastic_Robo.glb" />
         <pubDate>2024-11-07 01:36:17 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3205441196</guid>
      </item>
      <item>
         <title>Robo 02 - Completo</title>
         <author></author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3206950689</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/29f5fa3789a2691caadfb76b3f414105/codigo_robo02.txt" />
         <pubDate>2024-11-07 18:44:23 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3206950689</guid>
      </item>
      <item>
         <title>Música </title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3208488264</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://www.canva.com/design/DAGS8c0LHx0/gvktz22NYylDgpPGhHHNqw/edit?utm_content=DAGS8c0LHx0&amp;utm_campaign=designshare&amp;utm_medium=link2&amp;utm_source=sharebutton" />
         <pubDate>2024-11-08 15:55:36 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3208488264</guid>
      </item>
      <item>
         <title>conexões giroscopio</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3208867028</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/1162ed516c1fae3ada155b5c70f4021d/image.png" />
         <pubDate>2024-11-08 23:42:39 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3208867028</guid>
      </item>
      <item>
         <title>Musica</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3209434730</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/7932a6af06abd038f8cd922ec910d698/Musica_IFBOTICS.mp3" />
         <pubDate>2024-11-09 22:41:29 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3209434730</guid>
      </item>
      <item>
         <title></title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3209452784</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/eacdb2c2e00e27652a9fdca6b5876d25/1731196358.pdf" />
         <pubDate>2024-11-09 23:56:30 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3209452784</guid>
      </item>
      <item>
         <title></title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3209453099</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/7d67f0fea17d76e6b57f8431db3721b4/1731196651.pdf" />
         <pubDate>2024-11-09 23:57:59 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3209453099</guid>
      </item>
      <item>
         <title>Código Completo Robô 01</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3211873884</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/546290ec40e181f45503eb9909ce3059/codigo_completo_robo01_txt.ino" />
         <pubDate>2024-11-11 22:17:26 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3211873884</guid>
      </item>
      <item>
         <title>Robo 01 - Completo</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3211874721</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/dc58ef286610ffc135308a051387deca/codigo_robo01.txt" />
         <pubDate>2024-11-11 22:18:52 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3211874721</guid>
      </item>
      <item>
         <title>Codigo Robo 02 - Completo</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3212475753</link>
         <description><![CDATA[]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/a017142f09be97d6f872d00af5ef7f41/codigo_completo_robo02_txt.ino" />
         <pubDate>2024-11-12 05:16:39 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3212475753</guid>
      </item>
      <item>
         <title>Código ROBO 01 (100%) - ESSE CÓDIGO ESTÁ NOS DOIS ROBOS</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3215335106</link>
         <description><![CDATA[<pre><code class="language-cpp">// ==========================================================================================
// Equipe IFBOTICS | Júlia Assis e Pedro Lucas | Instituto Federal da Bahia, campus Eunápolis
// ==========================================================================================

// ==========================================================================================
// Inclusão de Bibliotecas | Usadas para auxiliar na programação do Robô

  #include &lt;MPU6050_tockn.h&gt;  // biblioteca do giroscopio
  #include &lt;Wire.h&gt;           // biblioteca para o funcionamento do gisroscopio 
  #include &lt;HCSR04.h&gt;         // biblioteca do sensor ultrassonico
  #include &lt;AFMotor.h&gt;        // biblioteca motor SHIELD

// ==========================================================================================

// ==========================================================================================
// Configuração do Robô | Tempos | Velocidade | Ângulos | Motor Shield
  
  //Sensor de Som
    #define som 51

  //Tempos
    #define tempo_01 700
    #define tempo_espera1 10000
    #define tempo_espera2 25000
    #define tempo_espera3 900

    #define t1 500
    #define t2 1000
  
  //velocidades 
    #define velocidade 255

  //angulos
    // parte 01
    #define ang2 -40
    #define ang3 15
    #define ang4 -80
    #define ang5 80
    #define ang6 0
    // parte 02 
    #define ang7 300
    #define ang8 0
    #define ang9 -150
    #define ang10 0

  // CONFIGURAÇÃO DOS MOTORES

    AF_DCMotor motor1(1);
    AF_DCMotor motor2(2);
    AF_DCMotor motor3(3);
    AF_DCMotor motor4(4);

  int valor = 1;                            // essa variavel permitira que as etapas da danca possam ir evoluindo  

  MPU6050 mpu6050(Wire);                    // Inicializacao do giroscopio
  UltraSonicDistanceSensor distance(52,53); // Inicializacao do sensor ultrassonico

// ==========================================================================================

// ============================================
// Função de Inicialização
  
  void setup() {

    pinMode(som,INPUT);

  // Velocidade dos Motores
    motor1.setSpeed(velocidade);
    motor2.setSpeed(velocidade);
    motor3.setSpeed(velocidade);
    motor4.setSpeed(velocidade);

  // INICIALIZAÇÃO DO GIROSCÓPIO
    Wire.begin();
    mpu6050.begin();

  // TEMPO PARA INICIALIZAÇÃO
    delay(tempo_espera1);
  }

// ============================================

// ============================================
// Loop Principal

  void loop() {
    
    mpu6050.update();

    float distancia = distance.measureDistanceCm(); // a variavel distancia ira guardar a distancia que o sensor ultrassonico esta lendo
    int angulo = mpu6050.getAngleZ(); // a variavel angulo guarda o angulo que o giroscopio esta lendo
    
  //***********parte 01********************

    if(valor == 1){
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      valor = 2;
      
    }

    if(valor == 2){    
      if(digitalRead(som)==HIGH){
        parar();
        delay(tempo_espera2); // Nessa parte eu e julia vamos para frente e fazemos uma dança entre nós, os robos devem esperar nesse momento
        valor = 3;
      }
    }

  //***********parte 04*******************

    if(valor == 3){ 
      frente();
      delay(500);
      parar();
      delay(800);
      frente();
      delay(500);
      parar();
      delay(800);

      tras();
      delay(500);
      parar();
      delay(800);
      tras();
      delay(500);
      parar();
      delay(800);

      frente();
      delay(500);
      parar();
      delay(800);
      
      tras();
      delay(500);
      parar();
      delay(1000);
        
      valor = 4;
    }

    if(valor == 4){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 5;
      }else{
        esquerda();
      }
    }

    if(valor == 5){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 6;
      }else{
        direita();
      }
    }

    if(valor == 6){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 7;
      }else{
        esquerda();
      }
    }

    if(valor == 7){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 8;
      }else{
        direita();
      }
    }

    if(valor == 8){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 9;
      }else{
        esquerda();
      }
    }

    if(valor == 9){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 10;
      }else{
        direita();
      }
    }

    if(valor == 10){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 11;
      }else{
        esquerda();
      }
    }

    if(valor == 11){    
      if(angulo &lt;= ang6){
        parar();
        delay(1000); // Nessa parte eu e julia vamos para frente e fazemos uma dança entre nós, os robos devem esperar nesse momento
        valor = 12;

      }else{
        direita();  
      }
    }
  //************parte 5****************************

    if(valor == 12){ 
      frente();
      delay(500);
      parar();
      delay(800);
      frente();
      delay(500);
      parar();
      delay(800);

      tras();
      delay(500);
      parar();
      delay(800);
      tras();
      delay(500);
      parar();
      delay(800);

      frente();
      delay(500);
      parar();
      delay(800);
      
      tras();
      delay(500);
      parar();
      delay(1000);
        
      valor = 13;
    }

    if(valor == 13){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 14;
      }else{
        esquerda();
      }
    }

    if(valor == 14){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 15;
      }else{
        direita();
      }
    }

    if(valor == 15){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 16;
      }else{
        esquerda();
      }
    }

    if(valor == 16){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 17;
      }else{
        direita();
      }
    }

    if(valor == 17){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 18;
      }else{
        esquerda();
      }
    }

    if(valor == 18){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 19;
      }else{
        direita();
      }
    }

    if(valor == 19){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 20;
      }else{
        esquerda();
      }
    }

    if(valor == 20){    
      if(angulo &lt;= ang6){
        parar();
        delay(3000);
        valor = 21;

      }else{
        direita();  
      }
    }

  //***********parte 06 - FIM*******************
  
    if(valor == 21){ // Nessa parte os robos vão para frente e fazem uma dança deles
      frente();
      delay(700);
      parar();
      delay(800);

      esquerda();
      delay(500);
      parar();
      delay(800);
      direita();
      delay(500);
      parar();

      valor = 777;
    }
  }
// ============================================

// ==========================================================================================
// Funções de Movimento

  /* Abaixo temos todas as funções de:
      &gt; Mover para frente
      &gt; Mover para tras
      &gt; Parar 
      &gt; Mover para esquerda
      &gt; Mover para direita
    
    Essas função são chamadas no codigo acima, não precisando
    escrever muitos códigos repetidos

    FORWARD  = mover para frente
    BACKWARD = mover para tras
    RELEASE  = parar 

  */

  void frente(){

    motor1.run(FORWARD); 
    motor2.run(FORWARD);
    motor3.run(FORWARD); 
    motor4.run(FORWARD);

  }
  void tras(){
    
    motor1.run(BACKWARD); 
    motor2.run(BACKWARD);
    motor3.run(BACKWARD); 
    motor4.run(BACKWARD);

  }
  void esquerda(){
    
    motor2.run(BACKWARD); 
    motor3.run(BACKWARD); 

    motor4.run(FORWARD);
    motor1.run(FORWARD);

  }
  void direita(){
    
    motor2.run(FORWARD); 
    motor3.run(FORWARD); 
    
    motor4.run(BACKWARD);
    motor1.run(BACKWARD);

  }
  void parar(){
    
    motor1.run(RELEASE);  
    motor2.run(RELEASE);
    motor3.run(RELEASE); 
    motor4.run(RELEASE);

  }
// ==========================================================================================
</code></pre>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/65c33ca964bb40cd3b646279be68cdc6/codigo_completo_robo01_txt.ino" />
         <pubDate>2024-11-13 14:55:15 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3215335106</guid>
      </item>
      <item>
         <title>Codigo ROBO 02 (100%)</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3215339100</link>
         <description><![CDATA[<pre><code class="language-cpp">// ==========================================================================================
// Equipe IFBOTICS | Júlia Assis e Pedro Lucas | Instituto Federal da Bahia, campus Eunápolis
// ==========================================================================================

// ==========================================================================================
// Inclusão de Bibliotecas | Usadas para auxiliar na programação do Robô

  #include &lt;MPU6050_tockn.h&gt;  // biblioteca do giroscopio
  #include &lt;Wire.h&gt;           // biblioteca para o funcionamento do gisroscopio 
  #include &lt;HCSR04.h&gt;         // biblioteca do sensor ultrassonico
  #include &lt;AFMotor.h&gt;        // biblioteca motor SHIELD

// ==========================================================================================

// ==========================================================================================
// Configuração do Robô | Tempos | Velocidade | Ângulos | Motor Shield
  
  //Sensor de Som
    #define som 51

  //Tempos
    #define tempo_01 700
    #define tempo_espera1 10000
    #define tempo_espera2 20000
    #define tempo_espera3 900

    #define t1 500
    #define t2 1000
  
  //velocidades 
    #define velocidade 255

  //angulos
    // parte 01
    #define ang2 -20
    #define ang3 20
    #define ang4 -80
    #define ang5 80
    #define ang6 0
    // parte 02 
    #define ang7 300
    #define ang8 0
    #define ang9 -150
    #define ang10 0

  // CONFIGURAÇÃO DOS MOTORES

    AF_DCMotor motor1(1);
    AF_DCMotor motor2(2);
    AF_DCMotor motor3(3);
    AF_DCMotor motor4(4);

  int valor = 1;                            // essa variavel permitira que as etapas da danca possam ir evoluindo  

  MPU6050 mpu6050(Wire);                    // Inicializacao do giroscopio
  UltraSonicDistanceSensor distance(52,53); // Inicializacao do sensor ultrassonico

// ==========================================================================================

// ============================================
// Função de Inicialização
  
  void setup() {

    pinMode(som,INPUT);

  // Velocidade dos Motores
    motor1.setSpeed(velocidade);
    motor2.setSpeed(velocidade);
    motor3.setSpeed(velocidade);
    motor4.setSpeed(velocidade);

  // INICIALIZAÇÃO DO GIROSCÓPIO
    Wire.begin();
    mpu6050.begin();

  // TEMPO PARA INICIALIZAÇÃO
    delay(tempo_espera1);
  }

// ============================================

// ============================================
// Loop Principal

  void loop() {
    
    mpu6050.update();

    float distancia = distance.measureDistanceCm(); // a variavel distancia ira guardar a distancia que o sensor ultrassonico esta lendo
    int angulo = mpu6050.getAngleZ(); // a variavel angulo guarda o angulo que o giroscopio esta lendo
    
  //***********parte 01********************

    if(valor == 1){
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      valor = 2;
      
    }

    if(valor == 2){    
      if(digitalRead(som)==HIGH){
        parar();
        delay(tempo_espera2); // Nessa parte eu e julia vamos para frente e fazemos uma dança entre nós, os robos devem esperar nesse momento
        valor = 3;
      }
    }

  //***********parte 04*******************

    if(valor == 3){ 
      frente();
      delay(500);
      parar();
      delay(800);
      frente();
      delay(500);
      parar();
      delay(800);

      tras();
      delay(500);
      parar();
      delay(800);
      tras();
      delay(500);
      parar();
      delay(800);

      frente();
      delay(500);
      parar();
      delay(800);
      
      tras();
      delay(500);
      parar();
      delay(1000);
        
      valor = 4;
    }

    if(valor == 4){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 6;
      }else{
        direita();
      }
    }

    if(valor == 6){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 7;
      }else{
        esquerda();
      }
    }

    if(valor == 7){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 8;
      }else{
        direita();
      }
    }

    if(valor == 8){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 9;
      }else{
        esquerda();
      }
    }

    if(valor == 9){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 10;
      }else{
        direita();
      }
    }

    if(valor == 10){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 11;
      }else{
        esquerda();
      }
    }

    if(valor == 11){    
      if(angulo &lt;= ang6){
        parar();
        delay(1000); // Nessa parte eu e julia vamos para frente e fazemos uma dança entre nós, os robos devem esperar nesse momento
        valor = 12;

      }else{
        direita();  
      }
    }
  //************parte 5****************************

    if(valor == 12){ 
      frente();
      delay(500);
      parar();
      delay(800);
      frente();
      delay(500);
      parar();
      delay(800);

      tras();
      delay(500);
      parar();
      delay(800);
      tras();
      delay(500);
      parar();
      delay(800);

      frente();
      delay(500);
      parar();
      delay(800);
      
      tras();
      delay(500);
      parar();
      delay(1000);
        
      valor = 13;
    }

    if(valor == 13){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 14;
      }else{
        esquerda();
      }
    }

    if(valor == 14){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 15;
      }else{
        direita();
      }
    }

    if(valor == 15){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 16;
      }else{
        esquerda();
      }
    }

    if(valor == 16){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 17;
      }else{
        direita();
      }
    }

    if(valor == 17){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 18;
      }else{
        esquerda();
      }
    }

    if(valor == 18){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 19;
      }else{
        direita();
      }
    }

    if(valor == 19){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 20;
      }else{
        esquerda();
      }
    }

    if(valor == 20){    
      if(angulo &lt;= ang6){
        parar();
        delay(8000);
        valor = 21;

      }else{
        direita();  
      }
    }

  //***********parte 06 - FIM*******************
  
    if(valor == 21){ // Nessa parte os robos vão para frente e fazem uma dança deles
      frente();
      delay(700);
      parar();
      delay(800);

      esquerda();
      delay(500);
      parar();
      delay(800);
      direita();
      delay(500);
      parar();

      valor = 777;
    }
  }
// ============================================

// ==========================================================================================
// Funções de Movimento

  /* Abaixo temos todas as funções de:
      &gt; Mover para frente
      &gt; Mover para tras
      &gt; Parar 
      &gt; Mover para esquerda
      &gt; Mover para direita
    
    Essas função são chamadas no codigo acima, não precisando
    escrever muitos códigos repetidos

    FORWARD  = mover para frente
    BACKWARD = mover para tras
    RELEASE  = parar 

  */

  void frente(){

    motor1.run(FORWARD); 
    motor2.run(FORWARD);
    motor3.run(FORWARD); 
    motor4.run(FORWARD);

  }
  void tras(){
    
    motor1.run(BACKWARD); 
    motor2.run(BACKWARD);
    motor3.run(BACKWARD); 
    motor4.run(BACKWARD);

  }
  void esquerda(){
    
    motor2.run(BACKWARD); 
    motor3.run(BACKWARD); 

    motor4.run(FORWARD);
    motor1.run(FORWARD);

  }
  void direita(){
    
    motor2.run(FORWARD); 
    motor3.run(FORWARD); 
    
    motor4.run(BACKWARD);
    motor1.run(BACKWARD);

  }
  void parar(){
    
    motor1.run(RELEASE);  
    motor2.run(RELEASE);
    motor3.run(RELEASE); 
    motor4.run(RELEASE);

  }
// ==========================================================================================
</code></pre>]]></description>
         <enclosure url="https://padlet-uploads.storage.googleapis.com/1664510287/ea3a69d601a694c5d0ae6baca023f8d8/codigo_completo_robo02_txt.ino" />
         <pubDate>2024-11-13 14:57:16 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3215339100</guid>
      </item>
      <item>
         <title>Codigo ROBO 02</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3218236772</link>
         <description><![CDATA[<pre><code class="language-cpp">// ==========================================================================================
// Equipe IFBOTICS | Júlia Assis e Pedro Lucas | Instituto Federal da Bahia, campus Eunápolis
// ==========================================================================================

// ==========================================================================================
// Inclusão de Bibliotecas | Usadas para auxiliar na programação do Robô

  #include &lt;MPU6050_tockn.h&gt;  // biblioteca do giroscopio
  #include &lt;Wire.h&gt;           // biblioteca para o funcionamento do gisroscopio 
  #include &lt;HCSR04.h&gt;         // biblioteca do sensor ultrassonico
  #include &lt;AFMotor.h&gt;        // biblioteca motor SHIELD

// ==========================================================================================

// ==========================================================================================
// Configuração do Robô | Tempos | Velocidade | Ângulos | Motor Shield
  
  //Sensor de Som
    #define som 51

  //Tempos
    #define tempo_01 700
    #define tempo_espera1 10000
    #define tempo_espera2 15000
    #define tempo_espera3 900

    #define t1 500
    #define t2 1000
  
  //velocidades 
    #define velocidade 255

  //angulos
    // parte 01
    #define ang2 -40
    #define ang3 15
    #define ang4 -80
    #define ang5 80
    #define ang6 0
    // parte 02 
    #define ang7 300
    #define ang8 0
    #define ang9 -150
    #define ang10 0

  // CONFIGURAÇÃO DOS MOTORES

    AF_DCMotor motor1(1);
    AF_DCMotor motor2(2);
    AF_DCMotor motor3(3);
    AF_DCMotor motor4(4);

  int valor = 1;                            // essa variavel permitira que as etapas da danca possam ir evoluindo  

  MPU6050 mpu6050(Wire);                    // Inicializacao do giroscopio
  UltraSonicDistanceSensor distance(52,53); // Inicializacao do sensor ultrassonico

// ==========================================================================================

// ============================================
// Função de Inicialização
  
  void setup() {

    pinMode(som,INPUT);

  // Velocidade dos Motores
    motor1.setSpeed(velocidade);
    motor2.setSpeed(velocidade);
    motor3.setSpeed(velocidade);
    motor4.setSpeed(velocidade);

  // INICIALIZAÇÃO DO GIROSCÓPIO
    Wire.begin();
    mpu6050.begin();

  // TEMPO PARA INICIALIZAÇÃO
    delay(tempo_espera1);
  }

// ============================================

// ============================================
// Loop Principal

  void loop() {
    
    mpu6050.update();

    float distancia = distance.measureDistanceCm(); // a variavel distancia ira guardar a distancia que o sensor ultrassonico esta lendo
    int angulo = mpu6050.getAngleZ(); // a variavel angulo guarda o angulo que o giroscopio esta lendo
    
  //***********parte 01********************

    if(valor == 1){
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      valor = 2;
      
    }

    if(valor == 2){    
      if(digitalRead(som)==HIGH){
        parar();
        delay(2000);

        esquerda();
        delay(500);

        parar();
        delay(2000);

        frente();
        delay(500);

        parar();
        delay(2000);

        direita();
        delay(500);

        parar();
        delay(2000);
  
        delay(tempo_espera2); // Nessa parte eu e julia vamos para frente e fazemos uma dança entre nós, os robos devem esperar nesse momento
        valor = 3;
      }
    }

  //***********parte 04*******************

    if(valor == 3){ 
      frente();
      delay(500);
      parar();
      delay(800);
      frente();
      delay(500);
      parar();
      delay(800);

      tras();
      delay(500);
      parar();
      delay(800);
      tras();
      delay(500);
      parar();
      delay(800);

      frente();
      delay(500);
      parar();
      delay(800);
      
      tras();
      delay(500);
      parar();
      delay(1000);
        
      valor = 4;
    }

    if(valor == 4){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 5;
      }else{
        esquerda();
      }
    }

    if(valor == 5){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 6;
      }else{
        direita();
      }
    }

    if(valor == 6){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 7;
      }else{
        esquerda();
      }
    }

    if(valor == 7){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 8;
      }else{
        direita();
      }
    }

    if(valor == 8){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 9;
      }else{
        esquerda();
      }
    }

    if(valor == 9){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 10;
      }else{
        direita();
      }
    }

    if(valor == 10){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 11;
      }else{
        esquerda();
      }
    }

    if(valor == 11){    
      if(angulo &lt;= ang6){
        parar();
        delay(1000); // Nessa parte eu e julia vamos para frente e fazemos uma dança entre nós, os robos devem esperar nesse momento
        valor = 12;

      }else{
        direita();  
      }
    }
  //************parte 5****************************

    if(valor == 12){ 
      frente();
      delay(500);
      parar();
      delay(800);
      frente();
      delay(500);
      parar();
      delay(800);

      tras();
      delay(500);
      parar();
      delay(800);
      tras();
      delay(500);
      parar();
      delay(800);

      frente();
      delay(500);
      parar();
      delay(800);
      
      tras();
      delay(500);
      parar();
      delay(1000);
        
      valor = 13;
    }

    if(valor == 13){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 14;
      }else{
        esquerda();
      }
    }

    if(valor == 14){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 15;
      }else{
        direita();
      }
    }

    if(valor == 15){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 16;
      }else{
        esquerda();
      }
    }

    if(valor == 16){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 17;
      }else{
        direita();
      }
    }

    if(valor == 17){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 18;
      }else{
        esquerda();
      }
    }

    if(valor == 18){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 19;
      }else{
        direita();
      }
    }

    if(valor == 19){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 20;
      }else{
        esquerda();
      }
    }

    if(valor == 20){    
      if(angulo &lt;= ang6){
        parar();
        delay(3000);
        valor = 21;

      }else{
        direita();  
      }
    }

  //***********parte 06 - FIM*******************
  
    if(valor == 21){ // Nessa parte os robos vão para frente e fazem uma dança deles
      frente();
      delay(700);
      parar();
      delay(800);

      esquerda();
      delay(500);
      parar();
      delay(800);
      direita();
      delay(500);
      parar();

      valor = 777;
    }
  }
// ============================================

// ==========================================================================================
// Funções de Movimento

  /* Abaixo temos todas as funções de:
      &gt; Mover para frente
      &gt; Mover para tras
      &gt; Parar 
      &gt; Mover para esquerda
      &gt; Mover para direita
    
    Essas função são chamadas no codigo acima, não precisando
    escrever muitos códigos repetidos

    FORWARD  = mover para frente
    BACKWARD = mover para tras
    RELEASE  = parar 

  */

  void frente(){

    motor1.run(FORWARD); 
    motor2.run(FORWARD);
    motor3.run(FORWARD); 
    motor4.run(FORWARD);

  }
  void tras(){
    
    motor1.run(BACKWARD); 
    motor2.run(BACKWARD);
    motor3.run(BACKWARD); 
    motor4.run(BACKWARD);

  }
  void esquerda(){
    
    motor2.run(BACKWARD); 
    motor3.run(BACKWARD); 

    motor4.run(FORWARD);
    motor1.run(FORWARD);

  }
  void direita(){
    
    motor2.run(FORWARD); 
    motor3.run(FORWARD); 
    
    motor4.run(BACKWARD);
    motor1.run(BACKWARD);

  }
  void parar(){
    
    motor1.run(RELEASE);  
    motor2.run(RELEASE);
    motor3.run(RELEASE); 
    motor4.run(RELEASE);

  }
// ==========================================================================================
</code></pre>]]></description>
         <enclosure url="" />
         <pubDate>2024-11-15 02:44:57 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3218236772</guid>
      </item>
      <item>
         <title>Codigo ROBO 01</title>
         <author>pl1997433</author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3218237617</link>
         <description><![CDATA[<pre><code class="language-cpp">// ==========================================================================================
// Equipe IFBOTICS | Júlia Assis e Pedro Lucas | Instituto Federal da Bahia, campus Eunápolis
// ==========================================================================================

// ==========================================================================================
// Inclusão de Bibliotecas | Usadas para auxiliar na programação do Robô

  #include &lt;MPU6050_tockn.h&gt;  // biblioteca do giroscopio
  #include &lt;Wire.h&gt;           // biblioteca para o funcionamento do gisroscopio 
  #include &lt;HCSR04.h&gt;         // biblioteca do sensor ultrassonico
  #include &lt;AFMotor.h&gt;        // biblioteca motor SHIELD

// ==========================================================================================

// ==========================================================================================
// Configuração do Robô | Tempos | Velocidade | Ângulos | Motor Shield
  
  //Sensor de Som
    #define som 51

  //Tempos
    #define tempo_01 700
    #define tempo_espera1 10000
    #define tempo_espera2 15000
    #define tempo_espera3 900

    #define t1 500
    #define t2 1000
  
  //velocidades 
    #define velocidade 255

  //angulos
    // parte 01
    #define ang2 -40
    #define ang3 15
    #define ang4 -80
    #define ang5 80
    #define ang6 0
    // parte 02 
    #define ang7 300
    #define ang8 0
    #define ang9 -150
    #define ang10 0

  // CONFIGURAÇÃO DOS MOTORES

    AF_DCMotor motor1(1);
    AF_DCMotor motor2(2);
    AF_DCMotor motor3(3);
    AF_DCMotor motor4(4);

  int valor = 1;                            // essa variavel permitira que as etapas da danca possam ir evoluindo  

  MPU6050 mpu6050(Wire);                    // Inicializacao do giroscopio
  UltraSonicDistanceSensor distance(52,53); // Inicializacao do sensor ultrassonico

// ==========================================================================================

// ============================================
// Função de Inicialização
  
  void setup() {

    pinMode(som,INPUT);

  // Velocidade dos Motores
    motor1.setSpeed(velocidade);
    motor2.setSpeed(velocidade);
    motor3.setSpeed(velocidade);
    motor4.setSpeed(velocidade);

  // INICIALIZAÇÃO DO GIROSCÓPIO
    Wire.begin();
    mpu6050.begin();

  // TEMPO PARA INICIALIZAÇÃO
    delay(tempo_espera1);
  }

// ============================================

// ============================================
// Loop Principal

  void loop() {
    
    mpu6050.update();

    float distancia = distance.measureDistanceCm(); // a variavel distancia ira guardar a distancia que o sensor ultrassonico esta lendo
    int angulo = mpu6050.getAngleZ(); // a variavel angulo guarda o angulo que o giroscopio esta lendo
    
  //***********parte 01********************

    if(valor == 1){
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);
      
      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      frente();
      delay(t1);
      parar();
      delay(t2);

      tras();
      delay(t1);
      parar();
      delay(t2);

      valor = 2;
      
    }

    if(valor == 2){    
      if(digitalRead(som)==HIGH){
        parar();
        delay(2000);

        direita();
        delay(500);

        parar();
        delay(2000);

        frente();
        delay(500);

        parar();
        delay(2000);

        esquerda();
        delay(500);

        parar();
        delay(2000);
  
        delay(tempo_espera2); // Nessa parte eu e julia vamos para frente e fazemos uma dança entre nós, os robos devem esperar nesse momento
        valor = 3;
      }
    }

  //***********parte 04*******************

    if(valor == 3){ 
      frente();
      delay(500);
      parar();
      delay(800);
      frente();
      delay(500);
      parar();
      delay(800);

      tras();
      delay(500);
      parar();
      delay(800);
      tras();
      delay(500);
      parar();
      delay(800);

      frente();
      delay(500);
      parar();
      delay(800);
      
      tras();
      delay(500);
      parar();
      delay(1000);
        
      valor = 4;
    }

    if(valor == 4){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 5;
      }else{
        esquerda();
      }
    }

    if(valor == 5){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 6;
      }else{
        direita();
      }
    }

    if(valor == 6){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 7;
      }else{
        esquerda();
      }
    }

    if(valor == 7){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 8;
      }else{
        direita();
      }
    }

    if(valor == 8){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 9;
      }else{
        esquerda();
      }
    }

    if(valor == 9){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 10;
      }else{
        direita();
      }
    }

    if(valor == 10){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 11;
      }else{
        esquerda();
      }
    }

    if(valor == 11){    
      if(angulo &lt;= ang6){
        parar();
        delay(1000); // Nessa parte eu e julia vamos para frente e fazemos uma dança entre nós, os robos devem esperar nesse momento
        valor = 12;

      }else{
        direita();  
      }
    }
  //************parte 5****************************

    if(valor == 12){ 
      frente();
      delay(500);
      parar();
      delay(800);
      frente();
      delay(500);
      parar();
      delay(800);

      tras();
      delay(500);
      parar();
      delay(800);
      tras();
      delay(500);
      parar();
      delay(800);

      frente();
      delay(500);
      parar();
      delay(800);
      
      tras();
      delay(500);
      parar();
      delay(1000);
        
      valor = 13;
    }

    if(valor == 13){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 14;
      }else{
        esquerda();
      }
    }

    if(valor == 14){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 15;
      }else{
        direita();
      }
    }

    if(valor == 15){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 16;
      }else{
        esquerda();
      }
    }

    if(valor == 16){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 17;
      }else{
        direita();
      }
    }

    if(valor == 17){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 18;
      }else{
        esquerda();
      }
    }

    if(valor == 18){
      if(angulo &lt;= ang2){
        parar();
        delay(tempo_01);
        valor = 19;
      }else{
        direita();
      }
    }

    if(valor == 19){
      if(angulo &gt;= ang3){
        parar();
        delay(tempo_01);
        valor = 20;
      }else{
        esquerda();
      }
    }

    if(valor == 20){    
      if(angulo &lt;= ang6){
        parar();
        delay(3000);
        valor = 21;

      }else{
        direita();  
      }
    }

  //***********parte 06 - FIM*******************
  
    if(valor == 21){ // Nessa parte os robos vão para frente e fazem uma dança deles
      frente();
      delay(700);
      parar();
      delay(800);

      esquerda();
      delay(500);
      parar();
      delay(800);
      direita();
      delay(500);
      parar();

      valor = 777;
    }
  }
// ============================================

// ==========================================================================================
// Funções de Movimento

  /* Abaixo temos todas as funções de:
      &gt; Mover para frente
      &gt; Mover para tras
      &gt; Parar 
      &gt; Mover para esquerda
      &gt; Mover para direita
    
    Essas função são chamadas no codigo acima, não precisando
    escrever muitos códigos repetidos

    FORWARD  = mover para frente
    BACKWARD = mover para tras
    RELEASE  = parar 

  */

  void frente(){

    motor1.run(FORWARD); 
    motor2.run(FORWARD);
    motor3.run(FORWARD); 
    motor4.run(FORWARD);

  }
  void tras(){
    
    motor1.run(BACKWARD); 
    motor2.run(BACKWARD);
    motor3.run(BACKWARD); 
    motor4.run(BACKWARD);

  }
  void esquerda(){
    
    motor2.run(BACKWARD); 
    motor3.run(BACKWARD); 

    motor4.run(FORWARD);
    motor1.run(FORWARD);

  }
  void direita(){
    
    motor2.run(FORWARD); 
    motor3.run(FORWARD); 
    
    motor4.run(BACKWARD);
    motor1.run(BACKWARD);

  }
  void parar(){
    
    motor1.run(RELEASE);  
    motor2.run(RELEASE);
    motor3.run(RELEASE); 
    motor4.run(RELEASE);

  }
// ==========================================================================================
</code></pre>]]></description>
         <enclosure url="" />
         <pubDate>2024-11-15 02:45:32 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3218237617</guid>
      </item>
      <item>
         <title>codigo_super_team</title>
         <author></author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3219507852</link>
         <description><![CDATA[<p>&nbsp; #include &lt;AFMotor.h&gt; // Biblioteca motor SHIELD</p><p><br></p><p>&nbsp; #define s1 53</p><p>&nbsp; #define s2 52</p><p>&nbsp; #define velocidade 100</p><p><br></p><p>&nbsp; AF_DCMotor motor1(1);</p><p>&nbsp; AF_DCMotor motor4(4);</p><p><br></p><p>void setup() {</p><p><br></p><p>//MOTOR velocidade</p><p>&nbsp; motor1.setSpeed(velocidade);</p><p>&nbsp; motor4.setSpeed(velocidade);</p><p>//******</p><p><br></p><p>//sensores de linha</p><p><br></p><p>&nbsp; pinMode(s1,INPUT);//Sensor 01</p><p>&nbsp; pinMode(s2,INPUT);//Sensor 02</p><p><br></p><p>//*******</p><p><br></p><p>}</p><p><br></p><p>void loop() {</p><p><br></p><p>&nbsp; bool valor1 = digitalRead(s1);//sensor de linha 01</p><p>&nbsp; bool valor2 = digitalRead(s2);//sensor de linha 02</p><p><br></p><p>&nbsp; if(valor1 <mark> 0 &amp;&amp; valor2 </mark> 0){</p><p>&nbsp; &nbsp; mover_frente();</p><p>&nbsp; }</p><p><br></p><p>&nbsp; if(valor1 <mark> 1 &amp;&amp; valor2 </mark> 0 ){</p><p>&nbsp; &nbsp; direita();</p><p>&nbsp; }</p><p>&nbsp;</p><p>&nbsp; if(valor1 <mark> 0 &amp;&amp; valor2 </mark> 1 ){</p><p>&nbsp; &nbsp; esquerda();</p><p>&nbsp; }</p><p>&nbsp;</p><p>&nbsp; if(valor1 <mark> 1 &amp;&amp; valor2 </mark> 1 ){</p><p>&nbsp; &nbsp; parar();</p><p>&nbsp; }</p><p><br></p><p>}</p><p><br></p><p>void mover_frente(){</p><p><br></p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor1.run">motor1.run</a>(FORWARD);</p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor4.run">motor4.run</a>(FORWARD);</p><p><br></p><p>}</p><p><br></p><p>void mover_tras(){</p><p><br></p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor1.run">motor1.run</a>(BACKWARD);</p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor4.run">motor4.run</a>(BACKWARD);</p><p><br></p><p>}</p><p><br></p><p>void esquerda(){</p><p><br></p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor1.run">motor1.run</a>(BACKWARD);</p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor4.run">motor4.run</a>(FORWARD);</p><p><br></p><p>}</p><p><br></p><p>void direita(){</p><p><br></p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor1.run">motor1.run</a>(FORWARD);</p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor4.run">motor4.run</a>(BACKWARD);</p><p><br></p><p>}</p><p><br></p><p>void parar(){</p><p><br></p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor1.run">motor1.run</a>(RELEASE);</p><p>&nbsp; <a rel="noopener noreferrer nofollow" href="http://motor4.run">motor4.run</a>(RELEASE);</p><p><br></p><p>}</p>]]></description>
         <enclosure url="" />
         <pubDate>2024-11-15 20:41:16 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3219507852</guid>
      </item>
      <item>
         <title>codigo base </title>
         <author></author>
         <link>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3510866995</link>
         <description><![CDATA[<pre><code class="language-cpp">  /*
    Componentes usados:
    - Arduino Mega
    - 1 Monster Motor Shield
    - 1 MPU6050 (giroscopio)
    - Código Base Trio
  */

  #include &lt;VirtualWire.h&gt;
  #include &lt;MPU6050_tockn.h&gt;  // biblioteca do giroscopio
  #include &lt;Wire.h&gt;
  #include &lt;AFMotor.h&gt;  

  //***********VELOCIDADES************
  #define VELOCIDADE_TOTAL 255 // Velocidade do motor
  
  //***********TEMPOS************
  #define tempo_espera 2000
  #define tempo_fase01 4000
  #define tempo_fase02 2000
  
  //***********ANGULOS************
  #define angulo_fase01  

  char dados;
  MPU6050 mpu6050(Wire);                    

  int valor = 1;

void setup() {

  //Giroscopio
  Wire.begin();
  mpu6050.begin();
    
  //Monitor Serial
  Serial.begin(9600);
  
  // Módulo Radiofrequencia
  vw_set_tx_pin(53); //Pino de dados
  vw_setup(2000); //Velocidade de transmissão em bits por segundo
  dados = "R";
  // Estado inicial do motor (parado)
  digitalWrite(4, 0);
  digitalWrite(7, 0);
  digitalWrite(8, 0);
  digitalWrite(9, 0);

  delay(2000);
    
}

void loop() {

  mpu6050.update();
  float angulo = mpu6050.getAngleZ(); // a variavel angulo guarda o angulo que o giroscopio esta lendo

  if(valor == 1){  
    analogWrite(5, VELOCIDADE_TOTAL);
    analogWrite(6, VELOCIDADE_TOTAL);
    
    mover_frente();
    delay(tempo_fase01);
    parar();
    delay(tempo_espera);
    valor = 2;
  }

  if(valor == 2){  
    analogWrite(5, VELOCIDADE_TOTAL);
    analogWrite(6, VELOCIDADE_TOTAL);
    
    mover_direita();
    delay(tempo_fase02);
    parar();
    delay(tempo_espera);
    valor = 3;
  }
  delay(700);
  
/*
  mover_frente();
  delay(4000);
  
  parar();
  delay(2000);
  
  mover_tras();
  delay(4000);
  
  parar();
  delay(2000);
  
  vw_send((uint8_t *)dados, strlen(dados));
  vw_wait_tx(); //Aguarda o envio
  delay(20000);
*/
  
}

void mover_frente(){
  // motor 02
  digitalWrite(7, 0);
  digitalWrite(8, 1);
  
  // motor 01
  digitalWrite(4, 0);
  digitalWrite(9, 1);
  
}

void mover_tras(){
  // motor 02
  digitalWrite(7, 1);
  digitalWrite(8, 0);

  //motor 01
  digitalWrite(4, 1);
  digitalWrite(9, 0);
  
}

void parar(){
  //motor 02  
  digitalWrite(7, 0);
  digitalWrite(8, 0);
  
  //motor 01
  digitalWrite(4, 0);
  digitalWrite(9, 0);
  
}

void mover_direita(){
 // motor 02
  digitalWrite(7, 0);
  digitalWrite(8, 1);
  
  // motor 01
  digitalWrite(4, 1);
  digitalWrite(9, 0);
   
}


void mover_esquerda(){
 // motor 02
  digitalWrite(7, 1);
  digitalWrite(8, 0);
  
  // motor 01
  digitalWrite(4, 0);
  digitalWrite(9, 1);
   
}</code></pre>]]></description>
         <enclosure url="" />
         <pubDate>2025-07-04 19:43:01 UTC</pubDate>
         <guid>https://padlet.com/pl1997433/sqq4ibg3rkmi9dyu/wish/3510866995</guid>
      </item>
   </channel>
</rss>
