マイコンボードの基礎
➀暗くなるとLEDが光るコード
ソフト:Arduino
マイコンボード:Arduino UNO
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(13,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
int val=0;
val=analogRead(1);
Serial.println(val);
if(val>200){
digitalWrite(13,HIGH);
delay(300);
}else{
digitalWrite(13,LOW);
delay(300);
}
}
➁日常の中の負、正の感情のシチュエーション
正の感情:
美味しいものを食べる
好きな人(家族・友人・恋人・アイドル?)と会う
試験に合格する
給料をもらう
良い睡眠をとる
負の感情:
遅刻する
宿題が終わらない
道に迷う
光を操る
➀ランダムに光る #include#define PIN 9 // 信号用のピンを指定 #define NUMPIXELS 5 // LEDの数を指定 int brightness=50;//明るさ Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); void setup() { pixels.begin(); // NeoPixel出力ピンの初期化 pixels.setBrightness(brightness); } void loop() { pixels.clear(); // すべてのLEDの色を0にセット for(int i=0; i<NUMPIXELS; i++) { int r=random(0,255); int g=random(0,255); int b=random(0,255); pixels.setPixelColor(i, pixels.Color(r,g,b)); pixels.show(); delay(1000); } } ➁五つの色で順番に光る #include#define PIN 9 // 信号用のピンを指定 #define NUMPIXELS 5 // LEDの数を指定 int brightness=50;//明るさ Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); void setup() { pixels.begin(); // NeoPixel出力ピンの初期化 pixels.setBrightness(brightness); } void loop() { pixels.clear(); // すべてのLEDの色を0にセット for (int i=0; i < 5; i++){ pixels.setPixelColor(i, pixels.Color(255,0,0)); pixels.show(); delay(50); } for (int i=0; i < 5; i++){ pixels.setPixelColor(i, pixels.Color(255,255,0)); pixels.show(); delay(50); } for (int i=0; i < 5; i++){ pixels.setPixelColor(i, pixels.Color(0,0,255)); pixels.show(); delay(50); } for (int i=0; i < 5; i++){ pixels.setPixelColor(i, pixels.Color(0,255,255)); pixels.show(); delay(50); } for (int i=0; i < 5; i++){ pixels.setPixelColor(i, pixels.Color(255,0,255)); pixels.show(); delay(50); } } ➂グループワーク:pov 私たちは(良い天気が好きな人)に出会った; 私たちは(天気は癒し効果があるということ)に驚いた; この洞察は私たちに(どうすれば天気がコントロールできるか)という本当の問題を気づかせてくれた; その人は(良い天気を感じる)を必要としている;
動きを操る
➀回るモーター
ソフト:Arduino
マイコンボード:Arduino UNO
const int DIR = 8;
const int STEP = 9;
void setup() {
pinMode(DIR, OUTPUT);
pinMode(STEP, OUTPUT);
digitalWrite(DIR, LOW);
digitalWrite(STEP, LOW);
}
void loop() {
for (int i=0; i <= 50; i++){
clockwise(5000);
}
for (int i=0; i <= 50; i++){
counter_clockwise(5000);
}
}
void clockwise(int delaytime){
digitalWrite(DIR, HIGH);//HIGHは時計回り
digitalWrite(STEP, HIGH);
delayMicroseconds(delaytime);
digitalWrite(STEP, LOW);
delayMicroseconds(delaytime);
}
void counter_clockwise(int delaytime){
digitalWrite(DIR, LOW);//はLOWは反時計回り
digitalWrite(STEP, HIGH);
delayMicroseconds(delaytime);
digitalWrite(STEP, LOW);
delayMicroseconds(delaytime);
}
➁暗くなると反時計回りのモーター
const int DIR = 8;
const int STEP = 9;
void setup() {
pinMode(DIR, OUTPUT);
pinMode(STEP, OUTPUT);
digitalWrite(DIR, LOW);
digitalWrite(STEP, LOW);
pinMode(13,OUTPUT);
Serial.begin(9600);
}
void loop() {
int val=0;
val=analogRead(1);
Serial.println(val);
if(val<200) {
for (int i=0; i <= 50; i++){
clockwise(5000);
}
}else{
for (int i=0; i <= 50; i++){
counter_clockwise(5000);
}
}
}
void clockwise(int delaytime){
digitalWrite(DIR, HIGH);//HIGHは時計回り
digitalWrite(STEP, HIGH);
delayMicroseconds(delaytime);
digitalWrite(STEP, LOW);
delayMicroseconds(delaytime);
}
void counter_clockwise(int delaytime){
digitalWrite(DIR, LOW);//はLOWは反時計回り
digitalWrite(STEP, HIGH);
delayMicroseconds(delaytime);
digitalWrite(STEP, LOW);
delayMicroseconds(delaytime);
}
プロジェクトマネジメント
プロジェクト理念:見えないもの→見えるようにする
最終発表
外部リンク: YouTube