Ви не увійшли.
ukr100 пише:может еще где ноль поставить ))
Можно, в ценнике, и купить промышленные весы.
Добавляйте в код фильтры. Или кнопку и измерения или вывод на индикатор делайте по ее нажатию
Не промышленные не вариант, нужна компактная конструкция под конкретные задачи, на 4ре разносимых на разное расстояние тензодатчика и потом, а как же творчество Но пока фильтрами трудно
может еще где ноль поставить ))
Можно, в ценнике, и купить промышленные весы.
Добавляйте в код фильтры. Или кнопку и измерения или вывод на индикатор делайте по ее нажатию
vvr и гОсть, пасиб ! за оперативность помогло ! вы ЛУЧШИЕ !!!
Если не сложно, может еще подскажите, теперь когда стоит без груза, данные дрейфуют, какие то разные цифры выскакивают, не критично конечно, но как говорится для полного феншуя, может еще где ноль поставить ))
показывает тысячные, подскажите как их убрать, такая точность не нужна и мельтешат, скетч прилагаю.
lcd.print(D,2);
lcd.print(D1, 0)
Доброго дня, не спец но написал программу, требуется что бы с 4х тензодатчиков снимались данные и выводились на лсд дисплей 2004. Данные выводятся, так, что бы были по углам дисплея, всё как бы получилось и работает, но данные веса выводятся после запятой еще 3 цифры например так [ D1:270,365 D2:140,325 ] то-е показывает тысячные, подскажите как их убрать, такая точность не нужна и мельтешат, скетч прилагаю.
#include "HX711.h"
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
HX711 scale1 (2,3); // вход датчик 1 sck-2 dt-3
HX711 scale2 (4,5); // вход датчик 2 sck-4 dt-5
HX711 scale3 (6,7); // вход датчик 1 sck-6 dt-7
HX711 scale4 (8,9); // вход датчик 2 sck-8 dt-9
LiquidCrystal_I2C lcd(0x27,20,4);
float myScale1;
float myScale2;
float myScale3;
float myScale4;
void setup() {
scale1.set_scale(-100.8); //калибровочные данные подбирать в ручную ! при уменьшении значения масса уменьшается !
scale1.tare();
myScale1 = round(scale1.get_units(3));
scale2.set_scale(-106.0);
scale2.tare();
myScale2 = round(scale2.get_units(3));
scale3.set_scale(-100.8);
scale3.tare();
myScale3 = round(scale3.get_units(3));
scale4.set_scale(-100.8);
scale4.tare();
myScale4 = round(scale4.get_units(3));
Serial.begin(115200);
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0); // настройка расположения буквы датчика (строка, столбец)
lcd.print("D1:");
lcd.setCursor(10, 0);
lcd.print("D2:");
lcd.setCursor(0, 3); // настройка расположения буквы датчика (строка, столбец)
lcd.print("D3:");
lcd.setCursor(10, 3);
lcd.print("D4:");
}
void loop() {
myScale1 = scale1.get_units(16);
myScale2 = scale2.get_units(16);
myScale3 = scale3.get_units(16);
myScale4 = scale4.get_units(16);
//Serial.println(myScale);
float D1 = scale1.get_units();
float D2 = scale2.get_units();
float D3 = scale3.get_units();
float D4 = scale4.get_units();
lcd.setCursor(3, 0); // вывод расположения символа D (столбец, строка)
lcd.print(D1);
lcd.setCursor(13, 0);
lcd.print(D2);
lcd.setCursor(3, 3);
lcd.print(D3);
lcd.setCursor(13, 3);
lcd.print(D4);
}