RATA de ATTiny, ATTINY powered mini lightfollower (3 / 3 paso)

Paso 3: Software

1 de todos los descargar e instalar Biblioteca de ADAFRUIT Neopixel

Aquí está mi código con algunas descripciones principales (también he añadido el archivo de dibujo). Me didn´t comentar cada paso porque creo que isn´t es necesario.

Subir el bosquejo en su ATTiny85 y divertirse con su nuevo juguete

Ideas para la función de «personalidad» + tal vez ejemplos de código son muy bienvenidas :-)

Si hay cualquier pregunta, sienta libre de preguntar.

Espero que hayas disfrutado de mi corto instructivo y el pequeño viaje en el mundo de ATTINYs.

 /* ATTINY85-Rata simple ATTINY85 powered lightfollowing robot. Version 2.0, by Auer Markus */#include <avr/power.h>#include <Adafruit_NeoPixel.h>//motors #define LMOTOR 0 #define RMOTOR 1 //LEDs #define PIXELPIN 2 #define NUMPIXEL 3 //LDRs #define LLDR A2 #define RLDR A3//otherint emo = 0; float calib; boolean emostate; long oldmillis; //define NeopixelsAdafruit_NeoPixel PIXEL = Adafruit_NeoPixel(NUMPIXEL, PIXELPIN, NEO_GRB + NEO_KHZ800);void setup() { //upscale clock else you will encounter some timingproblems (the neopixel lib is written for 16MHz) #if defined (__AVR_ATtiny85__) if (F_CPU == 16000000) clock_prescale_set(clock_div_1); #endif //PINMODE pinMode(LMOTOR, OUTPUT); pinMode(RMOTOR, OUTPUT); pinMode(LLDR, INPUT); pinMode(LLDR, INPUT); //initialize pixels PIXEL.begin(); PIXEL.show(); delay(500); //startsequence for(int i=0;ivoid loop() { if(lightfollow() == 1) { left(); } else if(lightfollow() == 2) { right(); } else if(lightfollow() == 0) { forward(); } emotion(); }int lightfollow() { int treshold = 14; int result = 0; float left = 0; float right = 0; int samples = 1; //read LDRs for (int j = 0; j<samples; j++){ left = left + analogRead(LLDR); right = right + (analogRead(RLDR)*calib); }//calculate the result (which direction is the light coming from?) if((left/samples) > ((right/samples)+treshold)) {result = 2;} else if((left/samples) < ((right/samples)-treshold)) {result = 1;} else {result = 0;} return result; } void forward() { //Forward analogWrite(LMOTOR, 230); analogWrite(RMOTOR, 230); PIXEL.setPixelColor(0, PIXEL.Color(0,0,255)); PIXEL.setPixelColor(2, PIXEL.Color(0,0,255)); PIXEL.show(); }void left() { //LEFT analogWrite(LMOTOR, 150); analogWrite(RMOTOR, 255); PIXEL.setPixelColor(0, PIXEL.Color(0,0,255)); //PIXEL.setPixelColor(1, PIXEL.Color(75,0,0)); PIXEL.setPixelColor(2, PIXEL.Color(0,100,0)); PIXEL.show(); } void right() { //RIGHT analogWrite(LMOTOR, 255); analogWrite(RMOTOR, 150); PIXEL.setPixelColor(0, PIXEL.Color(0,100,0)); PIXEL.setPixelColor(2, PIXEL.Color(0,0,255)); PIXEL.show(); }//this is for further experiments, trying to give this one a little personality :-) i´m testing what could be able to do, but no good ideas yet. void emotion() { int emotimer = 2500; int duration = random(250,750); if (millis() - oldmillis > emotimer) { oldmillis = millis(); emo = random(1,4); } if (millis() - oldmillis > duration) { emostate = !emostate; } if (emostate == true) { switch (emo) { case 1: PIXEL.setPixelColor(1, PIXEL.Color((255),(255),(255))); PIXEL.show(); break; case 2: PIXEL.setPixelColor(1, PIXEL.Color((255),(0),(0))); PIXEL.show(); break; case 3: PIXEL.setPixelColor(1, PIXEL.Color((0),(255),(0))); PIXEL.show(); break; default: PIXEL.setPixelColor(1, PIXEL.Color(random(0,255),random(0,255),random(0,255))); PIXEL.show(); break; } } else { PIXEL.setPixelColor(1, PIXEL.Color(25,0,0)); PIXEL.show(); } } 

Artículos Relacionados

Arduino powered mini semáforo - monitorear su taller de reparaciones!

Arduino powered mini semáforo - monitorear su taller de reparaciones!

construí un pequeño gadget para ejecutar una señal de tránsito en la oficina para un estado de rápida ver cómo nos va en nuestro sistema de tickets.Requiere:-RepairShopr.com cuenta (gratis)-Teleduino cuenta (gratis)-Arduino + shield ethernet-Protoboa
Programa un ATtiny con Arduino

Programa un ATtiny con Arduino

siguientes son instrucciones de programación de los microcontroladores ATtiny utilizando el IDE de Arduino. En inglés llano, esto es cómo programar chips Atmel de 8 pines como lo haría normalmente un Arduino. Esto es cool porque el ATtiny es minúscul
Perro de Robo simple (hecho de teclas del piano, un arma de juguete y un ratón)

Perro de Robo simple (hecho de teclas del piano, un arma de juguete y un ratón)

(Si te gusta mi instructable, por favor voten por mí. Gracias por tu apoyo!)Oh, Azerbaiyán! Tierra del fuego, gran hospitalidad, gente amable y mujeres hermosas (... perdón,wom por n! por supuesto sólo tiene ojos para ti, mi esposaana ördəkburun de g
Muerte de ratas

Muerte de ratas

todos familiarizados con la serie Mundodisco de Terry Pratchett sabe la muerte de ratas (o deberían).Este año, me he inspirado monstruo segador de jimmyzdc de barro para decoración de Halloween. Pero cuando llegó el momento pensé que tal reaper tomar
Ratón trackball barato

Ratón trackball barato

disfrutarlo: pPaso 1: El materialtijerascortador deRatón atado con alambreMini rodillo de (con bolas de plástico)doble cara ducktapePaso 2: Mini trackball Corte el mini cuello del rodillo enPaso 3: fijación pares de cinta en el ratónConecte el mini r
Molde de alimentos de Nyancat CNC (nyancake).

Molde de alimentos de Nyancat CNC (nyancake).

CNC herramientas y comida! ¿Qué podría ser mejor? Además, es súper fácil.Este es un resumen de cómo hice un molde de nyancat alimentario, y por supuesto con la magia de CNC y archivos digitales de CAD se puede aplicar a casi cualquier forma que desee
USB Fake fogón en una caja de bambú

USB Fake fogón en una caja de bambú

este es mi primer Instructable. Le muestra cómo construir el elemento que se muestra en la imagen. USB powered mini fuego falso, ocupa una capa exterior de bambú para el efecto. Esto me llevó una tarde, que habría sido muy aburrida si no hubiera pens
LEGO fiambrera ordenador

LEGO fiambrera ordenador

¿Que siempre quisiste construir un ordenador Raspberry Pi en una fiambrera con Legos u otros ladrillos que se enclavija compatibles? Primero necesitará obtener una bodega de una fiambrera.Se necesita:Lonchera 7 x 8 x 4 o más grande si es posibleagudo
¿Construir una bicicleta freno de disco cuchillo Set

¿Construir una bicicleta freno de disco cuchillo Set

después de usted los individuos demostró el destral que hice con el freno de disco reflexioné sobre qué se puede hacer con esta gran pieza de acero? Que es cuando pensado de hacer unas knives.thanks de talla para mirar y disfrutar. Por favor voten!El
Guirnalda de Halloween monstruoso novedad

Guirnalda de Halloween monstruoso novedad

Inspirado por un Halloween guirnalda proyecto encontró en el sitio web de Party City, esta guirnalda de descomunal tiene todos tus iconos favoritos spooky de ojos locos y slithering serpientes, creepy lagartijas y ratas chillonas! Aquí, yo estoy toma
Mini tablero Attiny * actualizado * con programación

Mini tablero Attiny * actualizado * con programación

Desde varios meses leí el foro sobre el Attiny y Arduino.Es una gran plataforma para el fabricanteAsí que decido hacer mi propia tabla de Attiny85.Es una versión de bajo costo de ArduinoPaso 1: El shemaHice la shematic con águilaPaso 2: El PCBOrdené
Reparación muertos AVR - Attiny fusebit médico (HVSP)

Reparación muertos AVR - Attiny fusebit médico (HVSP)

¿cometes un error al programar fusebits, o deliberadamente discapacitados reset pin (RSTDISBL) o programación ISP (SPIEN)? No es necesario comprar o hacer inconveniente programador HV para desbloquear par de minúsculos AVR. Este médico de HV fusebit
Programación el ATtiny

Programación el ATtiny

este es un tutorial para programar el chip del ATtiny. Este tutorial será más en profundidad que la mayoría. Te daré cada paso y decirle las cosas nadie me dijo cuando comencé a programar ATtiny.Cosas que necesitará-Arduino Uno (se puede hacer con ot