あなたはコーヒー好きで、自宅でコーヒーを淹れることが好きです。しかし、あなたはいつも同じ味わいのコーヒーに飽きてしまいます。そこで、コーヒーミルを制御するPythonスクリプトを作成することにしました。

必要なもの

  • Arduino Uno
  • ブレッドボード
  • モータードライバー
  • ステッピングモーター
  • ジャンパーワイヤー

接続方法

  • Arduino Unoの3, 4, 5, 6番ピンにジャンパーワイヤーを接続する。
  • モータードライバーのIN1, IN2, IN3, IN4ピンにジャンパーワイヤーを接続する。
  • ステッピングモーターの端子にジャンパーワイヤーを接続する。

Pythonスクリプト

import serial

ser = serial.Serial('COM3', 9600) # Arduinoに接続するシリアルポートを設定する

def grind_coffee(grams):
    cmd = str(grams) + "\n"
    ser.write(cmd.encode())

grind_coffee(20) # 20グラムのコーヒーを挽く

Arduinoスケッチ

#include <AccelStepper.h>

#define motorPin1 3
#define motorPin2 4
#define motorPin3 5
#define motorPin4 6

#define stepsPerRevolution 2048

AccelStepper stepper(AccelStepper::DRIVER, motorPin1, motorPin3, motorPin2, motorPin4);

void setup()
{
  stepper.setMaxSpeed(1000);
  stepper.setAcceleration(100);
  Serial.begin(9600);
}

void loop()
{
  if (Serial.available() > 0) {
    int grams = Serial.parseInt();
    int steps = grams * stepsPerRevolution / 6;
    stepper.move(steps);
    stepper.runToPosition();
  }
}

以上のPythonスクリプトとArduinoスケッチを使用することで、コーヒーミルを制御することができます。