Весы.

ViktorF

Полезная в хозяйстве вещь.
Особенно если они ещё и умеют центр тяжести определять, к примеру.
Собственно устройство.

Репозитории проекта, одного и другого.

asssa

Купить такой инструмент имею желание, таможня Беларуси не даст, заставит растаможить.

viktor_p

Центр тяжести по Х, или по Y u Z тоже? Видел похожую штуку трех координатную для моделей весом 200 - 500 кг. Но отзывы были крайне негативными.

asssa

Анатолий Прудников тестил если не ошибаюсь вот такой девайс

ViktorF

Весы имеют два тензометрических датчика. Положение центра тяжести определяется по известной геометрии (положение каждого датчика относительно передней кромки крыла). По сумме показаний датчиков определяется вес модели. Весы калибруемы, что дает возможность довольно точно определять и общий вес и положение ЦТ.
Также для разных моделей можно применять датчики с разной предельной нагрузкой, что также способствует большей точности измерений. К примеру для металок можно обойтись датчиками на 1 кг, для больших планеров можно использовать датчики на 2-5 кг.

Пока ехала электроника, неспешно печатались детали корпуса. Комплект долго печатается, часов 20 в сумме.

taim

Очень удобный и точный девайс . Сравнили данные с другим способом Длусского М с помощью ниток для чистоты эксперимента всё совпало.

ViktorF

Основная начинка.
Выбор сделан в пользу варианта с одной Arduino и дисплеем 1602 с интерфейсом I2C.

Нужно добавить еще немного мелочевки, проводов и крепежа.

Aleksei_D

Виктор, то есть будешь 2 вариант делать

ViktorF

В оригинале устройство питается от 9В батареи типа Крона, помещаемой внутри.
Мне это как-то не очень.
У Arduino есть встроенный стабилизатор с диапазоном входного напряжения 7-12 вольт. Для питания же дисплея и усилителей датчиков нужно 5 вольт, это решается установкой дополнительного стабилизатора.
Наверное в наши дни у каждого в хозяйстве найдется 2-3S батарея Li-Po с разъёмом XT60, поэтому проще выпустить наружу хвост с ответной частью разъёма.
Диод на входе - защита от переполюсовки. С разъёмом XT60 это конечно маловероятно, но пусть будет. Меньше будет греться стабилизатор при питании от 3S батареи.

А вот модные винты в гнезда не очень лезут, шляпки великоваты.

karmann
ViktorF:

2-3S батарея Li-Po с разъёмом XT60

Виктор, а есть возможность разъём ХТ60 в корпус весов вклеить?

Aleksei_D

Виктор тут есть небольшая проблема в скетче предусмотрена контроль разряда кроны и примерно 6 вольт подается на 4 ногу 1 схема и 6 нога 2 схема это надо учесть если меняешь входное напряжение

ViktorF

Примерно 1 вольт подаётся. И в принципе там простой делитель, больше подадим - больше на выходе и наоборот. Соотвественно и показания напряжения меняются. Всё это ещё надо проверить, но если у нас батарейка внешняя, то есть масса других вариантов контролировать её состояние.

Вклеивать разъём или выводить хвост - дело вкуса. Хвост выводится в отверстие, где должен быть тумблер питания. Чтобы вклеить разъём нужно ковырять корпус.

ViktorF

Если с пайкой никаких проблем не возникает, то с прошивкой Ардуины их вагон и маленькая тележка.
Переустановка софта IDE, месторасположение скетчей, библиотеки, правка кода и т.п. В общем почти всё, что могло пойти не так, случилось. 😃
Но вроде всё начинает оживать.

ViktorF

Пульт для калибровки готов, можно настраивать.

EHOT

Щас спою…
Попробовал откомпилировать в Ардуино IDE скетчи. Собрались со второго раза. Просто поленился во второй скетч посмотреть. Ж-)
Нужно:
0. Завершаем работу ВСЕХ копий Arduino IDE, что сейчас запущены

  1. Скачать у того же камрада библиотеки дисплея github.com/olkal/LCD_ST7032 и ADC HX711_ADC github.com/olkal/HX711_ADC
  2. распаковываем архивы и копируем папки HX711_ADC-master и LCD_ST7032-master в c:\Users\User\Documents\Arduino\libraries\
    User - имя пользователя, под которым Вы работаете в Windows. Я старый солдат и не знаю других слов, обозначил себя предельно просто User )))
  3. Скопированные папки с библиотеками переименовываем в HX711_ADC и LCD_ST7032 - сокращаем суффикс “-master”
  4. В любом удобном месте на диске (удобно в c:\Users\User\Documents\Arduino\) создаем папки CG_scale и SimpleSerialDisplay
  5. Из папки “Arduino files” основного архива (первая ссылка первого сообщения темы) копируем в эти папки по одному скетчу CG_scale.ino и SimpleSerialDisplay.ino СООТВЕТСТВЕННО. Имена папок и помещенных в них файлов-скетчей должны совпадать!
  6. запускаем Arduino IDE (я пока пользуюсь версией 1.6.9 - лень песок вытряхивать), открываем скетч CG_scale “File=>Sketchbook=>CG_scale” и “File=>Sketchbook=>SimpleSerialDisplay” в разных окнах.
  7. Подключаем проводами или кабелем Arduino, жмем кнопку Upload для разных плат по отдельности, 2 раза.

Это было для версии с дисплеем с паралелльным интерфейсом и 2мя платами ардуино.

По второму варианту - все помещается в одну плату и дисплей подключается (по моим оценкам 4 проводами V, GNG, SCA, SDL) по шине I2C

Эх, у меня с десяток таких дисплеев лежат беспиризорные, брал для другого проекта, не понадобилось. Наваять мне весов что-ли? Ардуино знаю, секс люблю )))
Но пока оно все приедет из поднебесной - все терпение выветрится

ViktorF

Калибровка прошла благополучно. При весе калибровочного груза 1140 грамм показания после настройки колеблются в пределах одного грамма.
Протестировал и с батареей 3S. Напряжение питания на показания не влияет. После нескольких минут с включенным дисплеем кренка едва теплая. Потребляемый устройством ток не измерял, но по данным компонентов он должен быть не более 160-180 мА. Это при включенном дисплее. В дежурном режиме гораздо меньше.

ViktorF

Как я и предполагал, никаких серьёзных проблем с контролем и индикацией напряжения аккумулятора нет. Напряжение, поступающие на аналоговый вход Ардуины с делителя, находится в допустимом диапазоне даже в случае питания устройства от аккумулятора 3S.
Дисплей уверенно отображает напряжение любого аккумулятора.
Правда показания занижены примерно на 0.4 вольта для 2S. Но это вопрос калибровки.
И здесь у нас, как говорится, два путя: либо поиграться с коэффициентом в 473 строке скетча, либо подобрать резисторы делителя.
Вариант со скетчем конечно изящней, но я поступил так, как мне было удобней в данный момент. В итоге всего 50 ом, добавленных последовательно к нижнему плечу делителя, закрыли вопрос.
В случае 2S показание соответствуют до 0.1 вольта. А в случае 3S показания завышены на пару-тройку десятых. Тут дело скорее всего в нелинейности встроенного АЦП.

И еще по поводу того, вклеивать разъём питания в корпус или нет.
Если разъём будет вклеен в основание, подлезать к нему будет не очень удобно. Так и хочется взять устройство в руки, чтобы воткнуть фишку.
Но это не очень правильно, так как при включении устройство автоматически тарируется. Ему бы надо при включении и последующие секунд пять не шевелиться.

Фото делителя. Если присмотреться, можно разглядеть 2 SMD резистора в параллель, подоткнутых к среднему проводу.

EHOT

Виктор, а датчики на 1кг какой макс вес модели допустим? (для 2х кг датчиков чтото мало предложений)

ViktorF

В зависимости от центровки.
При центровке 150 мм весь вес модели будет приходиться на задний датчик (1). При центровке 120 мм - 0.83 на задний и 0.17 на передний, при центровке 70мм - 0.58 на задний и 0.42 на передний.
То есть для Скифа весом два кило и центровкой 110 на грудь заднего датчика ляжет примерно 1.83 кило, что многовато для килограммового.

ViktorF

К вопросу перегрузки.
В описаниях применяемых датчиков попадается информация, что допустимая перегрузка составляет 150%, а максимальная допустимая перегрузка составляет 200% от номинала датчика.
Итак, имеем весы с датчиками 2+2 килограмма.
Да, при соответствующем усилии на датчиках весы показывают и 5 килограмм и более. Но какова точность?
Грузим что есть.

Отдельная стальная чушка имеется, но её проблематично взвесить целиком. Поэтому пришлось делать составной груз.
На выходе имеем следующее.

Путем несложных вычислений (124х3875/150) выясняется, что на задний датчик приходится порядка 3203 грамм. Это примерно соответствует перегрузке в 160%.
А что с погрешностью?
По бумажкам получается 316+1348+1101+1106=3871 грамм.
На дисплее 3875 грамм.
Таким образом погрешность взвешивания составляет 4 грамма или около 1%. Погрешность в расчёте положения ЦТ должна быть где-то рядом.

P.S. Десятые доли грамма особо не считал и сборный груз, взвешенный скопом на контрольный весах может немного отличаться от суммы цифр по бумажкам.