ADS1232 24bit

Создаем свой блок. Вопросы, помощь знатоков.
Ответить
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

ADS1232 24bit

Сообщение Ingwar »

В поисках альтернативы связки AD8555 и AD7476 для тензодатчиков решил попробовать АЦП ADS1232 http://www.ti.com/lit/ds/symlink/ads1232.pdf.
https://ru.aliexpress.com/wholesale?cat ... xt=ADS1232
Нашел один из вариантов ее применения с принципиальными схемами и тестами https://gitlab.com/jousis/scale-featherwing
Из примера попробовал сделать ПБ.
ads1232.flp
Проверил на NANO, MEGA, STM - работает. Поскольку пример был для ESP32, думаю и на ESP8266 будет работать. Только на STM (под IDE) он работает как то не так... я бы сказал тормознуто.
Библиотека в чистом виде тут https://gitlab.com/jousis/ads1232-library

Поскольку языков программирования я не знаю, ПБ наверняка не оптимален.
Прошу знающих и умеющих, когда заняться будет нечем, посмотреть сие творение, а по возможности "причесать" и добавить неиспользованные в ПБ функции библиотеки.
Более полный пример тут https://gitlab.com/jousis/espresso-scale

З. Ы. На 10 килограммовом тензодатчике получил стабильную дискретность 1 грамм.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Ingwar 27 окт 2019, 14:17, всего редактировалось 1 раз.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
gmz_001
Рядовой
Сообщения: 13
Зарегистрирован: 19 окт 2017, 10:49

ADC1232 24bit

Сообщение gmz_001 »

1 к 10000 это больше 16 бит. Странно по тому что цап дифференциальный и 24 бита делятся пополам, 12 на прложительную часть и 12 на отрицательную. Сигнал с тензодатчика можно сместить так что бы он начинался с отрицательного и ухрдил в положительное напряжение, но это нужно перед ним ставить инструментальный усилитель и подстраивать у него смещение.

На вопрос не отвечу, сам достаточно поверхностно знаю С по этому в чужом коде не разберусь.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

ADC1232 24bit

Сообщение Sancho »

gmz_001 писал(а): 26 окт 2019, 23:14 Сигнал с тензодатчика можно сместить так что бы он начинался с отрицательного и ухрдил в положительное напряжение, но это нужно перед ним ставить инструментальный усилитель и подстраивать у него смещение.
По простому - точка отсчёта. У многих данный момент вызывает ступор, несмотря на явную очевидность. Иметь в запасе парочку LSB - отличное решение.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Ingwar
Полковник
Сообщения: 1928
Зарегистрирован: 28 окт 2015, 22:47
Откуда: Ленобласть
Имя: Игорь
Поблагодарили: 2 раза

ADC1232 24bit

Сообщение Ingwar »

gmz_001 писал(а): 26 окт 2019, 23:14 Странно по тому что цап дифференциальный и 24 бита делятся пополам, 12 на прложительную часть и 12 на отрицательную.
Вопросом не владею настолько, что бы оспаривать. Но я как я понимаю, дифференциальный АЦП - это двухконтактное устройство. В принципе, он берет разницу между напряжениями на двух клеммах и преобразует ее в двоичное число. И почему каналы должны делится на 2 не знаю...
gmz_001 писал(а): 26 окт 2019, 23:14 Сигнал с тензодатчика можно сместить так что бы он начинался с отрицательного и ухрдил в положительное напряжение, но это нужно перед ним ставить инструментальный усилитель и подстраивать у него смещение.
Используемый датчик веса имеет 4 пленочных тензодатчика включенных мостом. Сам АЦП имеет встроенный усилитель. Соответственно сдвигать думаю, ничего не нужно.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

ADS1232 24bit

Сообщение Sancho »

gmz_001 писал(а): 26 окт 2019, 23:14 1 к 10000 это больше 16 бит.
По порядку.
10 бит - 1024,
12 бит - 4096,
15 бит - 32768 - уже достаточно, чтобы 10000 описать в + и - .
gmz_001 писал(а): 26 окт 2019, 23:14 Странно по тому что цап дифференциальный и 24 бита делятся пополам, 12 на прложительную часть и 12 на отрицательную.
Вы немного заблуждаетесь - за то, какое число integer, положительное или отрицательное, отвечает всего один бит, старший.
Соответственно, для 24-х, 1 бит на знак и 23 бита на данные :)
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Ответить

Вернуться в «Разработка пользовательских блоков»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя