#43-1, M1S: четырёхканальный АЦП потоковой оцифровки ±10V


Подробности
Tibbit #43-1 построен на микросхеме 12-битного (+ знак) АЦП последовательного приближения (SAR) AD7323. Он предлагает четыре несимметричных или два дифференциальных канала.
В несимметричном режиме входной диапазон этого модуля Tibbit составляет ±10V, а в дифференциальном он принимает сигналы в диапазоне ±20V. Оба диапазона типичны для выходов промышленных датчиков давления, температуры и других преобразователей. Если вашему приложению нужен более широкий диапазон входного напряжения, используйте вместо него Tibbit #43-2.
Tibbit #43-1 требует только основного источника питания 5V. Чтобы принимать входные сигналы больше 5V, модуль оснащён малошумящим бездроссельным преобразователем DC-DC, который вырабатывает -14V и +14V из питания +5V модуля. Поскольку все дополнительные напряжения формируются на плате, внешний двухполярный источник питания на Tibbit #12 не нужен.
Между АЦП и главным CPU платы Tibbo Project PCB (TPP) находится микроконтроллер PIC16F1825. Его прошивка реализует простой командный интерфейс, доступный по линиям UART TX и RX (есть также линия управления потоком RTS). Микроконтроллер PIC занят только обслуживанием АЦП и не отвлекается на другие задачи, поэтому он обеспечивает выборку аналоговых данных с низким джиттером в режиме потоковой передачи и повышает линейность и точность аналого-цифрового преобразования.
Tibbit #43-1 работает либо в командном режиме (по умолчанию), либо в режиме потоковой передачи данных. Командный режим служит для настройки параметров модуля (рабочих параметров), а также для одиночных («разовых») аналого-цифровых преобразований. В режиме потоковой передачи модуль отправляет непрерывный поток измерений с низким джиттером, выполняемых с заданной частотой выборки. Устройство способно выполнять до 1,000 измерений в секунду при включении одного канала. При использовании всех четырёх каналов возможно до 200 измерений в секунду на канал.
Прошивку микроконтроллера PIC можно обновлять в системе, без дополнительного внешнего оборудования. Процесс обновления использует режим низковольтного программирования (LVP) микроконтроллера PIC: линия TX работает как ICSPCLK, линия RX - как ICSPDAT, а линия -MCLR переводит микроконтроллер в режим LVP.
Рабочие параметры Tibbit #43-1 приведены в разделе Технические характеристики.
О работе с Tibbit #43-1 читайте в разделе Работа с Tibbit #43-1.
Несимметричный и дифференциальный режимы
Работает ли Tibbit #43-1 в несимметричном или в дифференциальном режиме, определяет команда SM.
В несимметричном режиме модуль предоставляет четыре входных канала. Напряжение на каждом канале отсчитывается относительно системной земли, однако модуль не выводит линию земли. Это значит, что при работе Tibbit #43-1 в несимметричном режиме землю придётся взять в другом месте. Один из распространённых способов - использовать Tibbit #43-1 вместе с Tibbit #20, у которого есть клемма системной земли.
| Таблица 1 - назначение линий в несимметричном режиме | |
| IO1 | Несимметричный аналоговый входной канал 1 |
| IO2 | Несимметричный аналоговый входной канал 2 |
| IO3 | Несимметричный аналоговый входной канал 3 |
| IO4 | Несимметричный аналоговый входной канал 4 |
| GND | Этим модулем не предоставляется, нужно взять в другом месте (например, с помощью Tibbit #20) |
| Таблица 2 - назначение линий в дифференциальном режиме | |
| IO1 | Положительный вход дифференциального аналогового входного канала 1 |
| IO2 | Отрицательный вход дифференциального аналогового входного канала 1 |
| IO3 | Положительный вход дифференциального аналогового входного канала 2 |
| IO4 | Отрицательный вход дифференциального аналогового входного канала 2 |
В дифференциальном режиме системная земля не нужна. Однако для снижения шума экран кабеля сигнала можно подключить к земле TPS. Для этого землю тоже придётся взять в другом месте.
Линии управления
У Tibbit #43-1 есть четыре линии управления:
- TX: подключается к выходу TX главного CPU. По этой линии команды передаются от главного CPU к модулю. В состоянии простоя на линии HIGH.
- RX: подключается ко входу RX главного CPU. По этой линии главный CPU получает ответы и потоковые данные выборки от модуля. В состоянии простоя на линии HIGH.
- RTS: подключается к выходу RTS главного CPU. По этой линии главный CPU сообщает, готов ли он принимать данные UART от модуля. HIGH означает, что главный CPU не готов принимать данные UART. LOW означает, что главный CPU готов принимать данные.
- -MCLR: подключается напрямую к выводу сброса PIC. Для нормальной работы модуля на выводе -MCLR всегда должен быть HIGH. Чтобы сбросить микроконтроллер PIC, установите на линии LOW, а затем снова HIGH. Этот вывод также используется для низковольтного программирования микроконтроллера PIC, что позволяет обновлять прошивку модуля прямо в системе.
Управление потоком
Хотя у Tibbit #43-1 есть линия RTS, линии CTS нет. Причин две: (1) для неё нет свободного вывода - четвёртую линию ввода-вывода интерфейса модуля Tibbit занимает вывод -MCLR; (2) управление потоком в направлении от главного CPU к модулю не нужно. Большие объёмы данных, которым может потребоваться управление потоком, идут только от Tibbit #43-1 к главному CPU. В обратном направлении передаются лишь команды. Все команды короткие, и Tibbit #43-1 всегда принимает их надёжно.
При включении управления потоком в приложении не забудьте отобразить линию CTS на линию NULL (ser.ctsmap= PL_INT_NULL).
Если управление потоком не используется, не забудьте установить на линии RTS LOW (см. io.state). Если не установить на RTS LOW, Tibbit #43-1 так и не отправит ни одного байта данных.
Светодиоды
Каждая из линий управления A-D оснащена светодиодом. У линии RX светодиод зелёный, у остальных линий - красные. Светодиод включается, когда на соответствующей линии LOW.
Поддержка библиотекой
Tibbo поставляет для Tibbit #43-1 сопутствующую программную библиотеку, которая берёт на себя расчёты и преобразования.
Репозиторий библиотеки находится здесь: https://github.com/tibbotech/libraries/tree/main/tibbits/tbt43
Библиотеку легко подключить к проекту через AppBlocks. Не пишите приложения - рисуйте их! Весь процесс разработки проходит в режиме «укажи и щёлкни».