M5 Stack과 하중 센서로 비례자 만들기
규모를 정하다
M5 Stack을 사용해 저울을 만들기 위한 시행착오를 미리 기록한 것이다.
이번에 5kg을 측정할 수 있는 저울을 만들었다.
자재
디지털 하중 셀 아래 그림에서 보듯이 조립된 타입으로 사용하기 편합니다.5kg까지 측정 가능합니다.
연결 방법
사진처럼 연결.
하중 센서에 연결된 기판(HX711)에서 세트 제품인 전선(양단모)을 연결한 후 Grove 케이블을 연결한다.
나는 이번에 점프선을 중간에 끼워 연결했다.
HX711VCC-(보라색)-(빨간색)-M5 Stack 5V
HX711 SCK-(회색) - (흰색) - M5 Stack 22핀(SCL)
HX711DT-(흰색)-(노란색)-M5 Stack 21핀(SDA)
HX711 GND-(검정)-(검정)-M5 Stack GND
절차.
사용할 라이브러리는 여기.https://github.com/bogde/HX711)입니다.
소스 코드는 다음과 같습니다.#include <M5Stack.h> // M5Stackを使用
#include <HX711.h>
// HX711 circuit wiring
const int LOADCELL_DOUT_PIN = 21;
const int LOADCELL_SCK_PIN = 22;
void setup() {
M5.begin();
M5.Lcd.setTextSize(2); // 文字サイズを2にする
M5.Lcd.fillScreen(BLACK); // 背景を黒にする
Serial.begin(115200);
Serial.println("Initializing the scale");
scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
// scale.set_scale(LOADCELL_DIVIDER);
// scale.set_offset(LOADCELL_OFFSET);
// ☆それぞれの環境で適切な値を設定する☆
scale.set_scale(475.f);
// 現在を0gにセット
scale.tare(); // reset the scale to 0
}
void loop() {
if (M5.BtnA.wasPressed()) {
Serial.println("M5.BtnA.wasPressed()");
// ☆それぞれの環境で適切な値を設定する☆
scale.set_scale(475.f);
// 現在を0gにセット
scale.tare();
}
M5.update();
int weight = scale.get_units(5);
M5.Lcd.setCursor(40,30,4);
M5.Lcd.printf("%1d g ", weight);
M5.Lcd.fillRect(0, 80, 320, 80, TFT_BLACK);
M5.Lcd.fillRect(0, 80, weight*0.16, 80, TFT_BLUE);
Serial.print("average:\t");
Serial.println(weight, 1);
}
일단 할 건요.
scale.set_scale(475.f);
☆ 각자의 환경에 적당한 값을 설정하는 부분후술
scale.tare();
...현재 0g 재설정
의 두 줄.
그리고 측정할 때.
int weight = scale.get_units(5);
을 입력합니다.
매개 변수의 5는 출력이 다섯 번 측정된 평균치를 가리킨다.
HX711에 대한 다양한 정보가 난장판입니다.
scale.set_offset()
기다려도 돼.
set_scale에서 설정한 값
프로그램의 ☆ 부분, setscale는 매개 변수에 각 환경에 맞는 값을 매개 변수로 설정해야 합니다.
이것은 이 값을 어떻게 해야 하는지를 조사하는 방법으로 적당한 값을 넣어 보려고 한다. 실제적으로 65g의 물건은 65g의 값을 정확하게 측정하는 것이 되기 위해 값을 바꾸어 반복적으로 측정한다.
쉽지 않은 곳.
간단할 줄 알았는데 시간이 많이 걸렸어요.
사실 처음에는 M5 StickC에서 했어요. 아무리 조정해도 측정치를 확정할 수 없어서 중간에 잘했어요!이런 순간이 있었지만 이후에도 이상해졌고, 결국 아무것도 넣지 않은 0g이 됐을 때도 수치가 변동하기 시작했고, 그게 이상하다고 생각해 M5 Stack Basic으로 바꿔 마침내 안정됐다.
Reference
이 문제에 관하여(M5 Stack과 하중 센서로 비례자 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/siroitori0413/items/e45c5b5d3952ef32fff3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
사용할 라이브러리는 여기.https://github.com/bogde/HX711)입니다.
소스 코드는 다음과 같습니다.
#include <M5Stack.h> // M5Stackを使用
#include <HX711.h>
// HX711 circuit wiring
const int LOADCELL_DOUT_PIN = 21;
const int LOADCELL_SCK_PIN = 22;
void setup() {
M5.begin();
M5.Lcd.setTextSize(2); // 文字サイズを2にする
M5.Lcd.fillScreen(BLACK); // 背景を黒にする
Serial.begin(115200);
Serial.println("Initializing the scale");
scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
// scale.set_scale(LOADCELL_DIVIDER);
// scale.set_offset(LOADCELL_OFFSET);
// ☆それぞれの環境で適切な値を設定する☆
scale.set_scale(475.f);
// 現在を0gにセット
scale.tare(); // reset the scale to 0
}
void loop() {
if (M5.BtnA.wasPressed()) {
Serial.println("M5.BtnA.wasPressed()");
// ☆それぞれの環境で適切な値を設定する☆
scale.set_scale(475.f);
// 現在を0gにセット
scale.tare();
}
M5.update();
int weight = scale.get_units(5);
M5.Lcd.setCursor(40,30,4);
M5.Lcd.printf("%1d g ", weight);
M5.Lcd.fillRect(0, 80, 320, 80, TFT_BLACK);
M5.Lcd.fillRect(0, 80, weight*0.16, 80, TFT_BLUE);
Serial.print("average:\t");
Serial.println(weight, 1);
}
일단 할 건요.scale.set_scale(475.f);
☆ 각자의 환경에 적당한 값을 설정하는 부분후술
scale.tare();
...현재 0g 재설정
의 두 줄.
그리고 측정할 때.
int weight = scale.get_units(5);
을 입력합니다.
매개 변수의 5는 출력이 다섯 번 측정된 평균치를 가리킨다.
HX711에 대한 다양한 정보가 난장판입니다.
scale.set_offset()
기다려도 돼.
set_scale에서 설정한 값
프로그램의 ☆ 부분, setscale는 매개 변수에 각 환경에 맞는 값을 매개 변수로 설정해야 합니다.
이것은 이 값을 어떻게 해야 하는지를 조사하는 방법으로 적당한 값을 넣어 보려고 한다. 실제적으로 65g의 물건은 65g의 값을 정확하게 측정하는 것이 되기 위해 값을 바꾸어 반복적으로 측정한다.
쉽지 않은 곳.
간단할 줄 알았는데 시간이 많이 걸렸어요.
사실 처음에는 M5 StickC에서 했어요. 아무리 조정해도 측정치를 확정할 수 없어서 중간에 잘했어요!이런 순간이 있었지만 이후에도 이상해졌고, 결국 아무것도 넣지 않은 0g이 됐을 때도 수치가 변동하기 시작했고, 그게 이상하다고 생각해 M5 Stack Basic으로 바꿔 마침내 안정됐다.
Reference
이 문제에 관하여(M5 Stack과 하중 센서로 비례자 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/siroitori0413/items/e45c5b5d3952ef32fff3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
간단할 줄 알았는데 시간이 많이 걸렸어요.
사실 처음에는 M5 StickC에서 했어요. 아무리 조정해도 측정치를 확정할 수 없어서 중간에 잘했어요!이런 순간이 있었지만 이후에도 이상해졌고, 결국 아무것도 넣지 않은 0g이 됐을 때도 수치가 변동하기 시작했고, 그게 이상하다고 생각해 M5 Stack Basic으로 바꿔 마침내 안정됐다.
Reference
이 문제에 관하여(M5 Stack과 하중 센서로 비례자 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/siroitori0413/items/e45c5b5d3952ef32fff3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)