Svetielkujúci workshop: Rozdiel medzi revíziami
Zo stránky SensorWiki
Bez shrnutí editace |
Bez shrnutí editace |
||
Riadok 267: | Riadok 267: | ||
[[Category:AjTyvIT]] [[Category:Wearable]] | [[Category: AjTyvIT]] [[Category: Wearable]] |
Aktuálna revízia z 20:42, 21. február 2018
Svetielkujúci Workshop 18. 12. 2017
Úvod
1. Krok za krokom
1.1. Blink
1.2. Železničné priecestie
1.3. K.I.T.T. 2000
1.4. Ak to nefunguje...
...tak skontrolujte nastavenia.
2. A teraz už naozaj...
2.1. Adafruit Gemma
V programovacom prostredí Arduino treba najprv nastaviť typ elektronickej dosky na Adafruit Gemma 8MHz v menu Tools->Board.
Potom ešte treba vybrať vhodný programovací protokol -
vyeberiete ho z menu Tools->Programmer->USBtinyISP
2.2. Blink
Príklad čiapky s obyčajnými LED diódami - ukážka šitia: https://learn.adafruit.com/adafruit-led-sequins/
Vyskúšame postupne jednoduché programy
/* Blink 1 */
#define RED_LED 1
void setup() {
pinMode(RED_LED, OUTPUT);
}
void loop() {
digitalWrite(RED_LED, HIGH);
delay(200);
digitalWrite(RED_LED, LOW);
delay(200);
}
/* Blink 3 */
#define RED_LED 0
#define GREEN_LED 1
#define BLUE_LED 2
void setup() {
pinMode(RED_LED, OUTPUT);
pinMode(GREEN_LED, OUTPUT);
pinMode(BLUE_LED, OUTPUT);
}
void loop() {
digitalWrite(RED_LED, HIGH);
delay(200);
digitalWrite(RED_LED, LOW);
delay(200);
digitalWrite(GREEN_LED, HIGH);
delay(200);
digitalWrite(GREEN_LED, LOW);
delay(200);
digitalWrite(BLUE_LED, HIGH);
delay(200);
digitalWrite(BLUE_LED, LOW);
delay(200);
}
Plynulá zmena intenzity svitu LED diody (funguje len na D0 a D1, na D2 NIE)
int intenzita;
void setup() {
intenzita = 0;
pinMode(1,OUTPUT);
}
void loop() {
intenzita = 0;
for(int i=0; i<10 ; i++)
{
intenzita = intenzita + 25;
analogWrite(1,intenzita);
delay(50);
}
}
2.3. NeoPixel RGB
Priklady práce s inteligentnou RGB LED diódou Neopixel.
Napríklad takáto maska na maškarný bál...
ToDo: niekoľko pekných ukážkových programov, ktoré by sa dali vlastne aplikovať aj na obyčajné diódy http://moving-rainbow.readthedocs.io/en/latest/guide/list-of-sample-programs/ Schéma pripojenia
Základný príklad s jednou diódou
#include <Adafruit_NeoPixel.h>
#define PIN 1
Adafruit_NeoPixel LED = Adafruit_NeoPixel(1, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
LED.begin();
// LED.setPixelColor(n, red, green, blue);
LED.setPixelColor(0, 0, 0, 127);
LED.show(); // Show the preset color(s)
delay(2000);
LED.setBrightness(100);
}
void loop() {
// n R G B
LED.setPixelColor(0, 255, 0, 127);
LED.show(); // Show the preset color(s)
delay(2000);
LED.setPixelColor(0, 0 , 0, 0);
LED.show(); // Show the preset color(s)
delay(2000);
}
Základný príklad s dvoma diódami
#include <Adafruit_NeoPixel.h>
#define PIN 1
Adafruit_NeoPixel LED = Adafruit_NeoPixel(2, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
LED.begin();
LED.show(); // Show the preset color(s)
LED.setBrightness(100); // Interval 0 - 255
}
void loop() {
// LED.setPixelColor(n, red, green, blue);
LED.setPixelColor(0, 255, 0, 0); // First LED Red
LED.setPixelColor(1, 0, 0, 127); // Second LED Blue
LED.show();
delay(300);
LED.setPixelColor(0, 0, 0, 127); // First LED Blue
LED.setPixelColor(1, 255, 0, 0); // Second LED Red
LED.show();
delay(300);
}
A celkom na záver: ako prať elektronické odevy?
https://learn.adafruit.com/washing-wearable-electronics/hand-wash?view=all
Technicke informacie
- Adafruit Gemma Windows Driver: https://learn.adafruit.com/introducing-gemma/windows-setup
- Adafruit Board Arduino Manager: https://adafruit.github.io/arduino-board-index/package_adafruit_index.json
- Neopixel Library: https://github.com/adafruit/Adafruit_NeoPixel