diff --git a/content/docs/2023/code-design/6/2023-code-and-design-6.pdf b/content/docs/2023/code-design/6/2023-code-and-design-6.pdf index e9588e8..40ab6bb 100644 Binary files a/content/docs/2023/code-design/6/2023-code-and-design-6.pdf and b/content/docs/2023/code-design/6/2023-code-and-design-6.pdf differ diff --git a/content/docs/2023/code-design/7/2023-code-and-design-7.pdf b/content/docs/2023/code-design/7/2023-code-and-design-7.pdf new file mode 100644 index 0000000..e285fb2 Binary files /dev/null and b/content/docs/2023/code-design/7/2023-code-and-design-7.pdf differ diff --git a/content/docs/2023/code-design/7/_index.en.md b/content/docs/2023/code-design/7/_index.en.md new file mode 100644 index 0000000..3259717 --- /dev/null +++ b/content/docs/2023/code-design/7/_index.en.md @@ -0,0 +1,152 @@ +--- +title: Week 7 +date: 2023-05-26 +weight: 7 +--- + +# 2023 Tokyo University of the Arts Art media Center「Code and Design」 + +## Slides (in Japanese) + +{{< button href="2023-code-and-design-7.pdf">}}Slides(PDF){{< /button >}} + +{{< button href="./slides">}}Slides(HTML){{< /button >}} + + +## Python Scripts for Mouse Automation + +https://github.com/tomoyanonymous/py-serial-automouse + +{{< button href="https://github.com/tomoyanonymous/py-serial-automouse/archive/refs/heads/main.zip">}} DL Zip {{< /button >}} + +## Arduino Example Codes + +### ADCTouch_monitor.ino + +{{< button href="./ADCTouch_monitor/ADCTouch_monitor.ino">}}DL{{< /button >}} + +```cpp +#include +void setup() { + pinMode(A0, INPUT); + pinMode(LED_BUILTIN, OUTPUT); + Serial.begin(9600); +} +void loop() { + int val = ADCTouch.read(A0, 100); + Serial.println(val); + delay(40); +} +``` + +### ADCTouch_minimal.ino + +{{< button href="./ADCTouch_minimal/ADCTouch_minimal.ino">}}DL{{< /button >}} + +```cpp +#include +//setup()とloop()で共通して使う値はグローバル変数(関数の外側)で定義しておく +int ref = 0; + +void setup() { + pinMode(A0, INPUT); + pinMode(LED_BUILTIN, OUTPUT); + Serial.begin(9600); + //繋げた導体の状態で初期値が変わるので、それを保存しておく必要がある + ref = ADCTouch.read(A0, 100); //(使用するピン番号,平均を取るサンプル数) +} +void loop() { + int val = ADCTouch.read(A0, 100) - ref; + if (val > 40) { + digitalWrite(LED_BUILTIN, HIGH); + } else { + digitalWrite(LED_BUILTIN, LOW); + } + Serial.println(val); + delay(40); +} +``` + +### ADCTouch_Mouse + +{{< button href="./ADCTouch_Mouse/ADCTouch_Mouse.ino">}}DL{{< /button >}} + +```cpp +#include + +const int upButton = A0; +const int downButton = A1; +const int leftButton = A2; +const int rightButton = A3; +const int mouseButton = A4; +int ref_up = 0; +int ref_down = 0; +int ref_left = 0; +int ref_right = 0; +int ref_mouse = 0; + +int range = 10; // マウスカーソルの移動幅 + +void setup() { + pinMode(upButton, INPUT); + pinMode(downButton, INPUT); + pinMode(leftButton, INPUT); + pinMode(rightButton, INPUT); + pinMode(mouseButton, INPUT); + + ref_up = ADCTouch.read(upButton, 100); + ref_down = ADCTouch.read(downButton, 100); + ref_left = ADCTouch.read(leftButton, 100); + ref_right = ADCTouch.read(rightButton, 100); + ref_mouse = ADCTouch.read(mouseButton, 100); + + Serial.begin(9600); +} + +//マウス移動に関する処理をひとまとめに +void moveMouse(int x, int y, int mouse_state) { + Serial.print(x); + Serial.print(" "); + Serial.print(y); + Serial.print(" "); + Serial.println(mouse_state); +} + +void loop() { + // ボタンの検出 + int v1 = ADCTouch.read(upButton, 100) - ref_up; + int v2 = ADCTouch.read(downButton, 100) - ref_down; + int v3 = ADCTouch.read(leftButton, 100) - ref_left; + int v4 = ADCTouch.read(rightButton, 100) - ref_right; + int v5 = ADCTouch.read(mouseButton, 100) - ref_mouse; + //40以上ならクリックしたとみなし、1を、40以下なら0を + // A ? B : C;はif (A) { return B;} else {return C;} の略記(三項演算子) + int upState = v1 > 40 ? 1 : 0; + int downState = v2 > 40 ? 1 : 0; + int rightState = v3 > 40 ? 1 : 0; + int leftState = v4 > 40 ? 1 : 0; + int clickState = v5 > 40 ? 1 : 0; + // 移動距離を算出(左右同時押しも考慮) + int xDistance = (leftState - rightState) * range; + int yDistance = (upState - downState) * range; + + //移動もクリックもしてないならシリアル送信は冗長なので、しない + // && は AND、!はNOT + if (!(xDistance == 0 && yDistance == 0 && clickState == 0)) { + moveMouse(xDistance, yDistance, clickState); + } + delay(5); +} +``` + +### DrunkMouse(Add Randomness) + +{{< button href="./DrunkMouse/DrunkMouse.ino">}}DL{{< /button >}} + +### ADCTouch_Mouse_HID.ino (Only works for Leonardo and Pro Micro) + +{{< button href="./ADCTouch_Mouse_HID/ADCTouch_Mouse_HID.ino">}}DL{{< /button >}} + +### ADCTouch_Mouse_scroll.ino(works only with `move_relative_scroll.command`) + +{{< button href="./ADCTouch_Mouse_scroll/ADCTouch_Mouse_scroll.ino">}}DL{{< /button >}} \ No newline at end of file diff --git a/content/docs/2023/code-design/7/_index.md b/content/docs/2023/code-design/7/_index.md new file mode 100644 index 0000000..bb3c4ae --- /dev/null +++ b/content/docs/2023/code-design/7/_index.md @@ -0,0 +1,151 @@ +--- +title: 第7週 +date: 2023-05-26 +weight: 7 +--- + +# 2023年 東京藝術大学 芸術情報センター開設科目 「コードとデザイン」 第7回 + +## スライド + +{{< button href="2023-code-and-design-7.pdf">}}スライド(PDF){{< /button >}} + +{{< button href="slides">}}スライド(HTML){{< /button >}} + +## マウスを動かすためのPythonスクリプト + +https://github.com/tomoyanonymous/py-serial-automouse + +{{< button href="https://github.com/tomoyanonymous/py-serial-automouse/archive/refs/heads/main.zip">}} DL Zip {{< /button >}} + +## Arduinoサンプルコード + +### ADCTouch_monitor.ino + +{{< button href="examples/ADCTouch_monitor/ADCTouch_monitor.ino">}}DL{{< /button >}} + +```cpp +#include +void setup() { + pinMode(A0, INPUT); + pinMode(LED_BUILTIN, OUTPUT); + Serial.begin(9600); +} +void loop() { + int val = ADCTouch.read(A0, 100); + Serial.println(val); + delay(40); +} +``` + +### ADCTouch_minimal.ino + +{{< button href="examples/ADCTouch_minimal/ADCTouch_minimal.ino">}}DL{{< /button >}} + +```cpp +#include +//setup()とloop()で共通して使う値はグローバル変数(関数の外側)で定義しておく +int ref = 0; + +void setup() { + pinMode(A0, INPUT); + pinMode(LED_BUILTIN, OUTPUT); + Serial.begin(9600); + //繋げた導体の状態で初期値が変わるので、それを保存しておく必要がある + ref = ADCTouch.read(A0, 100); //(使用するピン番号,平均を取るサンプル数) +} +void loop() { + int val = ADCTouch.read(A0, 100) - ref; + if (val > 40) { + digitalWrite(LED_BUILTIN, HIGH); + } else { + digitalWrite(LED_BUILTIN, LOW); + } + Serial.println(val); + delay(40); +} +``` + +### ADCTouch_Mouse + +{{< button href="examples/ADCTouch_Mouse/ADCTouch_Mouse.ino">}}DL{{< /button >}} + +```cpp +#include + +const int upButton = A0; +const int downButton = A1; +const int leftButton = A2; +const int rightButton = A3; +const int mouseButton = A4; +int ref_up = 0; +int ref_down = 0; +int ref_left = 0; +int ref_right = 0; +int ref_mouse = 0; + +int range = 10; // マウスカーソルの移動幅 + +void setup() { + pinMode(upButton, INPUT); + pinMode(downButton, INPUT); + pinMode(leftButton, INPUT); + pinMode(rightButton, INPUT); + pinMode(mouseButton, INPUT); + + ref_up = ADCTouch.read(upButton, 100); + ref_down = ADCTouch.read(downButton, 100); + ref_left = ADCTouch.read(leftButton, 100); + ref_right = ADCTouch.read(rightButton, 100); + ref_mouse = ADCTouch.read(mouseButton, 100); + + Serial.begin(9600); +} + +//マウス移動に関する処理をひとまとめに +void moveMouse(int x, int y, int mouse_state) { + Serial.print(x); + Serial.print(" "); + Serial.print(y); + Serial.print(" "); + Serial.println(mouse_state); +} + +void loop() { + // ボタンの検出 + int v1 = ADCTouch.read(upButton, 100) - ref_up; + int v2 = ADCTouch.read(downButton, 100) - ref_down; + int v3 = ADCTouch.read(leftButton, 100) - ref_left; + int v4 = ADCTouch.read(rightButton, 100) - ref_right; + int v5 = ADCTouch.read(mouseButton, 100) - ref_mouse; + //40以上ならクリックしたとみなし、1を、40以下なら0を + // A ? B : C;はif (A) { return B;} else {return C;} の略記(三項演算子) + int upState = v1 > 40 ? 1 : 0; + int downState = v2 > 40 ? 1 : 0; + int rightState = v3 > 40 ? 1 : 0; + int leftState = v4 > 40 ? 1 : 0; + int clickState = v5 > 40 ? 1 : 0; + // 移動距離を算出(左右同時押しも考慮) + int xDistance = (leftState - rightState) * range; + int yDistance = (upState - downState) * range; + + //移動もクリックもしてないならシリアル送信は冗長なので、しない + // && は AND、!はNOT + if (!(xDistance == 0 && yDistance == 0 && clickState == 0)) { + moveMouse(xDistance, yDistance, clickState); + } + delay(5); +} +``` + +### DrunkMouse(ランダム性の追加) + +{{< button href="examples/DrunkMouse/DrunkMouse.ino">}}DL{{< /button >}} + +### ADCTouch_Mouse_HID.ino (Leonardo、Pro Microのみ) + +{{< button href="examples/ADCTouch_Mouse_HID/ADCTouch_Mouse_HID.ino">}}DL{{< /button >}} + +### ADCTouch_Mouse_scroll.ino(move_relative_scroll.commandと合わせて使う事) + +{{< button href="examples/ADCTouch_Mouse_scroll/ADCTouch_Mouse_scroll.ino">}}DL{{< /button >}} \ No newline at end of file diff --git a/content/docs/2023/code-design/7/examples/ADCTouch_Mouse/ADCTouch_Mouse.ino b/content/docs/2023/code-design/7/examples/ADCTouch_Mouse/ADCTouch_Mouse.ino new file mode 100644 index 0000000..61e5bda --- /dev/null +++ b/content/docs/2023/code-design/7/examples/ADCTouch_Mouse/ADCTouch_Mouse.ino @@ -0,0 +1,66 @@ +#include + +const int upButton = A0; +const int downButton = A1; +const int leftButton = A2; +const int rightButton = A3; +const int mouseButton = A4; +int ref_up = 0; +int ref_down = 0; +int ref_left = 0; +int ref_right = 0; +int ref_mouse = 0; + +int range = 10; // マウスカーソルの移動幅 + +void setup() { + pinMode(upButton, INPUT); + pinMode(downButton, INPUT); + pinMode(leftButton, INPUT); + pinMode(rightButton, INPUT); + pinMode(mouseButton, INPUT); + + ref_up = ADCTouch.read(upButton, 100); + ref_down = ADCTouch.read(downButton, 100); + ref_left = ADCTouch.read(leftButton, 100); + ref_right = ADCTouch.read(rightButton, 100); + ref_mouse = ADCTouch.read(mouseButton, 100); + + Serial.begin(9600); +} + +//マウス移動に関する処理をひとまとめに +void moveMouse(int x, int y, int mouse_state) { + Serial.print(x); + Serial.print(" "); + Serial.print(y); + Serial.print(" "); + Serial.println(mouse_state); +} + +void loop() { + // ボタンの検出 + int v1 = ADCTouch.read(upButton, 100) - ref_up; + int v2 = ADCTouch.read(downButton, 100) - ref_down; + int v3 = ADCTouch.read(leftButton, 100) - ref_left; + int v4 = ADCTouch.read(rightButton, 100) - ref_right; + int v5 = ADCTouch.read(mouseButton, 100) - ref_mouse; + //40以上ならクリックしたとみなし、1を、40以下なら0を + // A ? B : C;はif (A) { return B;} else {return C;} の略記(三項演算子) + int upState = v1 > 40 ? 1 : 0; + int downState = v2 > 40 ? 1 : 0; + int rightState = v3 > 40 ? 1 : 0; + int leftState = v4 > 40 ? 1 : 0; + int clickState = v5 > 40 ? 1 : 0; + // 移動距離を算出(左右同時押しも考慮) + int xDistance = (leftState - rightState) * range; + int yDistance = (upState - downState) * range; + + //移動もクリックもしてないならシリアル送信は冗長なので、しない + // && は AND、!はNOT + if (!(xDistance == 0 && yDistance == 0 && clickState == 0)) { + moveMouse(xDistance, yDistance, clickState); + } + + delay(5); +} diff --git a/content/docs/2023/code-design/7/examples/ADCTouch_Mouse_HID/ADCTouch_Mouse_HID.ino b/content/docs/2023/code-design/7/examples/ADCTouch_Mouse_HID/ADCTouch_Mouse_HID.ino new file mode 100644 index 0000000..16337a5 --- /dev/null +++ b/content/docs/2023/code-design/7/examples/ADCTouch_Mouse_HID/ADCTouch_Mouse_HID.ino @@ -0,0 +1,70 @@ +// Arduino Leonardo,Arduino Micro,Sparkfun Pro Microなど、ATMega32u4チップのものを使うこと + +#include +#include + +const int upButton = A0; +const int downButton = A1; +const int leftButton = A2; +const int rightButton = A3; +const int mouseButton = A4; +int ref_up = 0; +int ref_down = 0; +int ref_left = 0; +int ref_right = 0; +int ref_mouse = 0; + +int range = 10; + +void setup() { + pinMode(upButton, INPUT); + pinMode(downButton, INPUT); + pinMode(leftButton, INPUT); + pinMode(rightButton, INPUT); + pinMode(mouseButton, INPUT); + + ref_up = ADCTouch.read(upButton, 100); + ref_down = ADCTouch.read(downButton, 100); + ref_left = ADCTouch.read(leftButton, 100); + ref_right = ADCTouch.read(rightButton, 100); + ref_mouse = ADCTouch.read(mouseButton, 100); + + Serial.begin(9600); +} +void moveMouse(int x, int y, int mouse_state) { + Mouse.move(x, y, 0); + if (mouse_state == 1) { + if (!Mouse.isPressed(MOUSE_LEFT)) { + Mouse.press(MOUSE_LEFT); + } + } + else { + if (Mouse.isPressed(MOUSE_LEFT)) { + Mouse.release(MOUSE_LEFT); + } + } +} + +void loop() { + + int v1 = ADCTouch.read(upButton, 100) - ref_up; + int v2 = ADCTouch.read(downButton, 100) - ref_down; + int v3 = ADCTouch.read(leftButton, 100) - ref_left; + int v4 = ADCTouch.read(rightButton, 100) - ref_right; + int v5 = ADCTouch.read(mouseButton, 100) - ref_mouse; + int upState = v1 > 40 ? 1 : 0; + int downState = v2 > 40 ? 1 : 0; + int rightState = v3 > 40 ? 1 : 0; + int leftState = v4 > 40 ? 1 : 0; + int clickState = v5 > 40 ? 1 : 0; + + int xDistance = (leftState - rightState) * range; + int yDistance = (upState - downState) * range; + + + if (!(xDistance == 0 && yDistance == 0 && clickState == 0)) { + moveMouse(xDistance, yDistance, clickState); + } + + delay(5); +} \ No newline at end of file diff --git a/content/docs/2023/code-design/7/examples/ADCTouch_Mouse_scroll/ADCTouch_Mouse_scroll.ino b/content/docs/2023/code-design/7/examples/ADCTouch_Mouse_scroll/ADCTouch_Mouse_scroll.ino new file mode 100644 index 0000000..4a43b5f --- /dev/null +++ b/content/docs/2023/code-design/7/examples/ADCTouch_Mouse_scroll/ADCTouch_Mouse_scroll.ino @@ -0,0 +1,78 @@ +#include + +const int upButton = A0; +const int downButton = A1; +const int leftButton = A2; +const int rightButton = A3; +const int mouseButton = A4; +const int scrollButton = A5; + +int ref_up = 0; +int ref_down = 0; +int ref_left = 0; +int ref_right = 0; +int ref_mouse = 0; +int ref_scroll = 0; + + +int range = 10; // マウスカーソルの移動幅 + +void setup() { + pinMode(upButton, INPUT); + pinMode(downButton, INPUT); + pinMode(leftButton, INPUT); + pinMode(rightButton, INPUT); + pinMode(mouseButton, INPUT); + pinMode(scrollButton, INPUT); + + ref_up = ADCTouch.read(upButton, 100); + ref_down = ADCTouch.read(downButton, 100); + ref_left = ADCTouch.read(leftButton, 100); + ref_right = ADCTouch.read(rightButton, 100); + ref_mouse = ADCTouch.read(mouseButton, 100); + ref_scroll = ADCTouch.read(scrollButton, 100); + + Serial.begin(9600); +} + +//マウス移動に関する処理をひとまとめに +void moveMouse(int x, int y, int mouse_state, int scroll=0) { + Serial.print(x); + Serial.print(" "); + Serial.print(y); + Serial.print(" "); + Serial.print(mouse_state); + Serial.print(" "); + Serial.println(scroll); +} + +void loop() { + // ボタンの検出 + int v1 = ADCTouch.read(upButton, 100) - ref_up; + int v2 = ADCTouch.read(downButton, 100) - ref_down; + int v3 = ADCTouch.read(leftButton, 100) - ref_left; + int v4 = ADCTouch.read(rightButton, 100) - ref_right; + int v5 = ADCTouch.read(mouseButton, 100) - ref_mouse; + int v6 = ADCTouch.read(scrollButton, 100) - ref_scroll; + + //40以上ならクリックしたとみなし、1を、40以下なら0を + // A ? B : C;はif (A) { return B;} else {return C;} の略記(三項演算子) + int upState = v1 > 40 ? 1 : 0; + int downState = v2 > 40 ? 1 : 0; + int rightState = v3 > 40 ? 1 : 0; + int leftState = v4 > 40 ? 1 : 0; + int clickState = v5 > 40 ? 1 : 0; + int scrollState = v6 > 20 ? (v6 > 200 ? 1 : -1) : 0; + + // 移動距離を算出(左右同時押しも考慮) + int xDistance = (leftState - rightState) * range; + int yDistance = (upState - downState) * range; + + //移動もクリックもしてないならシリアル送信は冗長なので、しない + // && は AND、!はNOT + if (!(xDistance == 0 && yDistance == 0 && clickState == 0 && scrollState == 0)) { + moveMouse(xDistance, yDistance, clickState,scrollState); + } + + delay(5); +} diff --git a/content/docs/2023/code-design/7/examples/ADCTouch_minimal/ADCTouch_minimal.ino b/content/docs/2023/code-design/7/examples/ADCTouch_minimal/ADCTouch_minimal.ino new file mode 100644 index 0000000..abe5bb0 --- /dev/null +++ b/content/docs/2023/code-design/7/examples/ADCTouch_minimal/ADCTouch_minimal.ino @@ -0,0 +1,26 @@ + +#include +//setup()とloop()で共通して使う値はグローバル変数(関数の外側)で定義しておく +int ref = 0; + +void setup() { + pinMode(A0, INPUT); + pinMode(LED_BUILTIN, OUTPUT); + Serial.begin(9600); + //繋げた導体の状態で初期値が変わるので、それを保存しておく必要がある + ref = ADCTouch.read(A0, 100); //(使用するピン番号,平均を取るサンプル数) +} + +void loop() { + + int val = ADCTouch.read(A0, 100) - ref; + if (val > 40) { + digitalWrite(LED_BUILTIN, HIGH); + } else { + digitalWrite(LED_BUILTIN, LOW); + } + + Serial.println(val); + + delay(40); +} diff --git a/content/docs/2023/code-design/7/examples/ADCTouch_monitor/ADCTouch_monitor.ino b/content/docs/2023/code-design/7/examples/ADCTouch_monitor/ADCTouch_monitor.ino new file mode 100644 index 0000000..bd381bb --- /dev/null +++ b/content/docs/2023/code-design/7/examples/ADCTouch_monitor/ADCTouch_monitor.ino @@ -0,0 +1,13 @@ +#include + +void setup() { + pinMode(A0, INPUT); + pinMode(LED_BUILTIN, OUTPUT); + Serial.begin(9600); +} + +void loop() { + int val = ADCTouch.read(A0, 100); + Serial.println(val); + delay(40); +} diff --git a/content/docs/2023/code-design/7/examples/DrunkMouse/DrunkMouse.ino b/content/docs/2023/code-design/7/examples/DrunkMouse/DrunkMouse.ino new file mode 100644 index 0000000..13d316e --- /dev/null +++ b/content/docs/2023/code-design/7/examples/DrunkMouse/DrunkMouse.ino @@ -0,0 +1,68 @@ +#include + +const int upButton = A0; +const int downButton = A1; +const int leftButton = A2; +const int rightButton = A3; +const int mouseButton = A4; +int ref_up = 0; +int ref_down = 0; +int ref_left = 0; +int ref_right = 0; +int ref_mouse = 0; + +int range = 10; // マウスカーソルの移動幅 + +void setup() { + randomSeed(analogRead(A5)); + + pinMode(upButton, INPUT); + pinMode(downButton, INPUT); + pinMode(leftButton, INPUT); + pinMode(rightButton, INPUT); + pinMode(mouseButton, INPUT); + + ref_up = ADCTouch.read(upButton, 100); + ref_down = ADCTouch.read(downButton, 100); + ref_left = ADCTouch.read(leftButton, 100); + ref_right = ADCTouch.read(rightButton, 100); + ref_mouse = ADCTouch.read(mouseButton, 100); + + Serial.begin(9600); +} + +//マウス移動に関する処理をひとまとめに +void moveMouse(int x, int y, int mouse_state) { + Serial.print(x); + Serial.print(" "); + Serial.print(y); + Serial.print(" "); + Serial.println(mouse_state); +} + +void loop() { + // ボタンの検出 + int v1 = ADCTouch.read(upButton, 100) - ref_up; + int v2 = ADCTouch.read(downButton, 100) - ref_down; + int v3 = ADCTouch.read(leftButton, 100) - ref_left; + int v4 = ADCTouch.read(rightButton, 100) - ref_right; + int v5 = ADCTouch.read(mouseButton, 100) - ref_mouse; + //40以上ならクリックしたとみなし、1を、40以下なら0を + // A ? B : C;はif (A) { return B;} else {return C;} の略記(三項演算子) + int upState = v1 > 40 ? 1 : 0; + int downState = v2 > 40 ? 1 : 0; + int rightState = v3 > 40 ? 1 : 0; + int leftState = v4 > 40 ? 1 : 0; + int clickState = v5 > 40 ? 1 : 0; + // 移動距離を算出(左右同時押しも考慮) + int xDistance = (leftState - rightState) * range + random(-10,10); + int yDistance = (upState - downState) * range + random(-10,10); + + //移動もクリックもしてないならシリアル送信は冗長なので、しない + // && は AND、!はNOT + if (!(xDistance == 0 && yDistance == 0 && clickState == 0)) { + moveMouse(xDistance, yDistance, clickState); + } + + delay(5); +} diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.001.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.001.jpeg new file mode 100644 index 0000000..7d9d436 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.001.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.002.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.002.jpeg new file mode 100644 index 0000000..c5ed15f Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.002.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.003.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.003.jpeg new file mode 100644 index 0000000..42fd1cc Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.003.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.004.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.004.jpeg new file mode 100644 index 0000000..c99bf6c Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.004.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.005.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.005.jpeg new file mode 100644 index 0000000..b3352ff Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.005.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.006.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.006.jpeg new file mode 100644 index 0000000..b4bc12b Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.006.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.007.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.007.jpeg new file mode 100644 index 0000000..86d3c5c Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.007.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.008.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.008.jpeg new file mode 100644 index 0000000..880bd8e Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.008.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.009.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.009.jpeg new file mode 100644 index 0000000..8cb4f39 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.009.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.010.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.010.jpeg new file mode 100644 index 0000000..a089040 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.010.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.011.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.011.jpeg new file mode 100644 index 0000000..17180e2 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.011.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.012.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.012.jpeg new file mode 100644 index 0000000..ec87b6c Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.012.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.013.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.013.jpeg new file mode 100644 index 0000000..0004a82 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.013.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.014.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.014.jpeg new file mode 100644 index 0000000..6b862a2 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.014.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.015.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.015.jpeg new file mode 100644 index 0000000..5c3d204 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.015.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.016.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.016.jpeg new file mode 100644 index 0000000..c4f0de1 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.016.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.017.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.017.jpeg new file mode 100644 index 0000000..de37e91 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.017.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.018.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.018.jpeg new file mode 100644 index 0000000..862b165 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.018.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.019.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.019.jpeg new file mode 100644 index 0000000..9854851 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.019.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.020.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.020.jpeg new file mode 100644 index 0000000..941bc69 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.020.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.021.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.021.jpeg new file mode 100644 index 0000000..737370c Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.021.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.022.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.022.jpeg new file mode 100644 index 0000000..9a2a5dc Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.022.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.023.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.023.jpeg new file mode 100644 index 0000000..bfa47de Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.023.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.024.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.024.jpeg new file mode 100644 index 0000000..666d1d1 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.024.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.025.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.025.jpeg new file mode 100644 index 0000000..4cce2f8 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.025.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.026.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.026.jpeg new file mode 100644 index 0000000..a023c14 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.026.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.027.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.027.jpeg new file mode 100644 index 0000000..1ab9758 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.027.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.028.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.028.jpeg new file mode 100644 index 0000000..591be1c Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.028.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.029.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.029.jpeg new file mode 100644 index 0000000..3b6c3d7 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.029.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.030.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.030.jpeg new file mode 100644 index 0000000..7d24c60 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.030.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/2023-code-and-design-7.031.jpeg b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.031.jpeg new file mode 100644 index 0000000..5244016 Binary files /dev/null and b/content/docs/2023/code-design/7/slides/2023-code-and-design-7.031.jpeg differ diff --git a/content/docs/2023/code-design/7/slides/index.en.md b/content/docs/2023/code-design/7/slides/index.en.md new file mode 100644 index 0000000..ebb0d60 --- /dev/null +++ b/content/docs/2023/code-design/7/slides/index.en.md @@ -0,0 +1,10 @@ +--- +title: "Code and Design 2023 class 7 Slides" +date: 2023-05-19 +bookHidden: true +--- + + +# Slides + +{{< slides_jpg >}} \ No newline at end of file diff --git a/content/docs/2023/code-design/7/slides/index.md b/content/docs/2023/code-design/7/slides/index.md new file mode 100644 index 0000000..c25b173 --- /dev/null +++ b/content/docs/2023/code-design/7/slides/index.md @@ -0,0 +1,10 @@ +--- +title: "コードとデザイン 2023年 第7回 スライド" +date: 2023-05-19 +bookHidden: true +--- + + +# スライド + +{{< slides_jpg >}} \ No newline at end of file diff --git a/content/docs/2023/code-design/_index.en.md b/content/docs/2023/code-design/_index.en.md index ccd37fb..38605e7 100644 --- a/content/docs/2023/code-design/_index.en.md +++ b/content/docs/2023/code-design/_index.en.md @@ -39,7 +39,7 @@ In addition, by learning how to convert data and materials into each other throu 4. [(4/28) Binary Numbers WS ](./4) 5. [(5/12) Handmade Computer(DIWO Full Adder)](./5) 6. [(5/19) Software and Algorithm - Let's try using Arduino](./6) -7. (5/26) Considering Inputs (Switches, Handmade Resistors) +7. [(5/26) Considering Inputs (Make Unreasonable Mouse)](./7) 8. (6/2) Considering Output (motor, solenoid, relay) 9. (6/9) Cartesian Robot and Digital Fabrication (Plotter, Laser Cutter) 10. (6/16) Cartesian Robot and Digital Fabrication (3D Printer and G-code Hack) diff --git a/content/docs/2023/code-design/_index.md b/content/docs/2023/code-design/_index.md index 3a4e867..18d9ba4 100644 --- a/content/docs/2023/code-design/_index.md +++ b/content/docs/2023/code-design/_index.md @@ -40,7 +40,7 @@ bookCollapseSection: true 4. [(4/28) 二進数WS](./4) 5. [(5/12) Handmade Computer(みんなでつくる全加算器)](./5) 6. [(5/19) ソフトウェアとアルゴリズムーArduinoを使ってみよう](./6) -7. (5/26) 入力を考える(スイッチ、自作抵抗) +7. [(5/26) 入力を考える(不条理なマウスを作る)](./7) 8. (6/2) 出力を考える(モーター、ソレノイド、リレー) 9. (6/9) Cartesian Robotとデジタルファブリケーション(プロッター、レーザーカッター) 10. (6/16) Cartesian Robotとデジタルファブリケーション (3DプリンターとGコードハック)