工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

聖パトリックの日「チャグメーター」自作 – Circuito.ioで作るビール飲み速度計測デバイス

必要な部品と用品

SparkFun 圧力センサー (FSR) 0.5インチ × 1
SparkFun ミニプッシュボタンスイッチ × 1
Arduino UNO × 1
SparkFun 7セグメントシリアルディスプレイ - 赤 × 1
SparkFun ミニスピーカー - PCマウント 12mm 2.048kHz × 1

アプリとオンラインサービス

このプロジェクトについて

アイデア出し

ついに決着をつけよう - 誰が一番の早飲み王だ?

聖パトリックの日がやってきました。仕事中にビールを飲む絶好の口実です!このお祭りのために贈るのが、「チャグメーター (Chug Meter)」。これで早飲み王を決定しましょう!

※責任を持ってお飲みください

まず最初に、カウンターを作ってから飲み始めることをお勧めします。当たり前のことですが、念のため。

回路の組み立て方

回路はシンプルです:

マジックリンク をクリックすると circuito.io に飛び、コンポーネントがプリセレクトされています。

カスタマイズ

いつものように電子部品は変更可能です。例:

聖パトリックの日だから、好きにカスタマイズしてください!

「Generate」をクリック したら、返ってくる3つのパート BoM (部品表)、ステップバイステップ配線ガイド、コード を確認し、指示に従って組み立ててください。困ったらコメントで質問してください。

次のステップ

すべて動作したら:

  1. circuito.ioから得たサンプルコードを、本チュートリアル添付のコードで置き換え。Firmwareタブにペーストするだけで、コンポーネントライブラリはそのままでメイン関数だけ変更されます。
  2. FSR (圧力センサー) をビールコースターの下にテープで固定。グラスが持ち上げられると(圧力解除)タイマー開始、置き戻すと停止。ボタンでリセット。
  3. 7セグメント用ケースを3Dプリント
  4. 飲み始めよう!

ハッピー・聖パトリックデー!責任を持ってお楽しみください!

コード

チャグメーター用コード (Arduino)

circuito.ioから得たコードの setup() と loop() を以下で置き換えてください:

int start_flag = 0;
bool glassState = 0;
long finalTime, time0;
int timer;

void setup() {
  Serial.begin(9600);
  Serial.println("start");
  pushButton.init();
  s7s.clearDisplay();
  s7s.setBrightness(255);
  s7s.setDecimals(0b00010000);
  s7s.writeInt(0);
}

void loop() {
  float fsrForce = fsr.getForce();
  Serial.print(" Force: "); Serial.print(fsrForce); Serial.println(" [g]");
  
  bool pushButtonVal = pushButton.onPress();
  Serial.println(pushButtonVal);

  // リセットボタン押下時
  if (pushButtonVal == 1) {
    start_flag = 0;
    glassState = 0;
    s7s.writeInt(0);
    time0 = millis();
  }

  // タイマー状態管理
  if (start_flag == 0) {
    // グラスが置かれている
    if (fsrForce > 50) {
      glassState = 1;
      s7s.writeInt(0);
      time0 = millis();
    }
    // グラスが持ち上げられた
    else if (fsrForce < 50 && glassState) {
      finalTime = millis() - time0;
      start_flag = 1;
    }
  }
  // 飲んでいる最中
  else if (start_flag == 1) {
    if (fsrForce < 100) {
      finalTime = (millis() - time0) / 10;
      s7s.writeInt(finalTime);
    }
    // 飲み終わった
    else {
      start_flag = 2;
      finalTime = (millis() - time0) / 10;
      s7s.writeInt(finalTime);
      piezoSpeaker.playMelody(piezoSpeakerHoorayLength, piezoSpeakerHoorayMelody, piezoSpeakerHoorayNoteDurations);
      delay(500);
    }
  }
  // リセットされるまで最終タイムを表示
  else {
    s7s.writeInt(finalTime);
  }
}

製造プロセス

  1. 自由のために命を捧げた人々を偲ぶメモリアルデー
  2. 製造向け設計 (DFM): エンジニアとデザイナーのための実践ガイド
  3. SIGHT:視覚障害者を支援するスマートグラス
  4. DIY Arduino USBゲームコントローラー - 高性能ゲームパッドを自作
  5. DIYクラウドコスチューム: LEDストリップ、Arduino Nano & SparkFunパーツで光る雲に
  6. 産業用ラインフォロワーロボット - 物資輸送用自律走行ロボット
  7. スマートArduino水筒:リアルタイム監視とアラート機能付き
  8. 製造業の日2018に備える:イノベーションとキャリアの機会を祝おう
  9. MFG Day 2021:製造業最大のイベントへの招待
  10. フローメーター選定の完全ガイド:失敗しないための実践的ポイント
  11. Isabellenhütte、IEM-DCC発表:高速充電課金向け校正済みDCメータ