Русский
Русский
English
Статистика
Реклама

Rs485

Встраиваемый компьютер AntexGate. От прототипа к серийному производству

08.07.2020 14:22:16 | Автор: admin
image

Не так давно мы с командой разработали небольшой встраиваемый компьютер для решения задач IIoT и промышленной автоматизации. Первую статью о нашем устройстве можно посмотреть здесь.

Разрабатывать устройство решили на распространенном и оттестированном модуле Raspberry CM3+, что позволило нам создать компьютер с большими вычислительными способностями, огромным сообществом и простотой его использования. Под катом расскажу по этапам, от чего отталкивались и к чему пришли в итоге.

Муки выбора корпуса


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

После того, как мы заказали несколько вариантов корпусов, пришлось большее количество из них выбросить, так как они подходили только для домашних поделок и продавать их людям в таком виде не представлялось возможным. Основным претендентом на тот момент стал алюминиевый корпус с пластиковыми крышками 10*10*5 см (рисунок 1).

image
Рисунок 1 Первый вариант корпуса

Получив этот корпус в руки, было принято решение остановиться на нем. В этот же момент разработка платы подходила к концу и уже можно было по чертежам предварительно оценить, каким образом обрабатывать торцы для выводных разъемов. Однако пластиковые крышки корпуса после механической обработки сделали вид не товарным и мы опять пришли к поделке, а не к законченному коммерческому продукту.

Глянец весь быстро поцарапался и в этой блестящей рамке отверстия выглядели очень асимметрично (рисунок 2). Ожидание и реальность, как говорится.

image
Рисунок 2 Пластиковые крышки корпуса

Однако отказываться от корпуса не пришлось, потому что у производителя был такой же, но с алюминиевыми торцами, мы быстро его заказали и удивились, насколько он идеально выглядел (рисунок 3). Торцы очень красивые, матовые и бонусом была дополнительная помехозащищенность. Стоил такой корпус уже немного дороже, но красота требует жертв.

image
Рисунок 3 Металлический корпус

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

image
Рисунок 4 Гравировка металлического корпус

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

В итоге мы пришли к шелкографии с запеканием в печи (рисунок 5). Эта технология оказалась самой быстрой и очень крепкой. Всё свелось к тому, чтобы заказать единожды шаблон (фотовывод) и по нему делать партию до 50 штук в день.

image
Рисунок 5 Шелкография корпуса

Исправление недоработок


С корпусом закончили, а вот с платой оставались недоработки. Задумка нашего компьютера в том, чтобы любой пользователь мог спокойно установить дополнительное оборудование в устройство, открутив четыре болта на корпусе, как в свой ноутбук. Я думаю прошли те времена, когда на корпуса клеили наклеечки Не вскрывать, потеря гарантии.

Внутри корпуса есть периферия для прошивки вычислительного модуля, SIM-карта и многое другое. Однако была одна проблема с монтажом платы в корпус, а именно выводные светодиоды на ножках, которые постоянно гнулись у наших клиентов, взявших прототипы на тест (рисунок 6).

image
Рисунок 6 Выводные светодиоды на ножках

В этой связи пришлось поменять диоды на ножках на SMD-светодиоды, которые светят в бок и проблема с установкой платы в корпус решилась, больше ничего не гнулось (рисунок 7).

image
Рисунок 7 SMD-светодиоды

Индикация была глубоко внутри корпуса и чтобы увидеть свет приходилось смотреть под прямым углом на торец. В голову пришла идея световодов из полимерных прозрачных материалов (рисунок 8). Оставалось найти бюджетный, но эстетически красивый вариант. В голову пришел молочный плексиглас с прозрачностью 20% с толщиной листа 3 мм, в первой же фирме лазерной резки подобрали диаметр миниатюрного цилиндра, он был равен диаметру отверстия в корпусе. Особенность в том, что станок при лазерной резке дает небольшой скос нижнего диаметра на 0.1 мм и таким образом мы получили мешок миниатюрных усеченных конусов с нижним диаметром 2,9 мм и верхним 3 мм, а высота была 3 мм как и толщина торцов нашего корпуса. Вставляем конус в отверстие и запрессовка крепко загоняет эти световоды в отверстие, а небольшая капелька клея с обратной стороны фиксирует их намертво.

image
Рисунок 8 Световоды из плексигласа

Итак, устройство получило эстетичный вид при небольших вложениях в корпус, однако этот путь хорош на старте производства и уменьшение издержек планируется путем изготовления подобного корпуса при наращивании производства. Литье из пластика не рассматривается в виду дорогого запуска производства и низких экранирующих способностей по сравнению с металлом.

Итог


image

Спасибо за внимание! Надеемся, что мы вдохновим читателей на переработку Ваших личных проектов в более масштабное производство с коммерческими перспективами. В нашей великой стране на полочках у инициаторов пылятся действительно нужные вещи, которые могут заменять зарубежные производства.

В следующей статье мы расскажем Вам историю тестирования и тонкости настройки mPCIe 3G-модема Huawei и mPCIe LoraWan-модуля MikroTik.
Подробнее..

Встраиваемый компьютер AntexGate 3G-модем. Полезные настройки для более стабильного интернет-соединения

03.08.2020 14:12:05 | Автор: admin
image

В сфере промышленной автоматизации существует негласная парадигма, в которой многие производители промышленного оборудования делают контроллеры отдельно, а модемы отдельно. Как правило, каждое устройство помещается в свой корпус, имеет своё питание, большие габариты и высокую стоимость. Такой вариант разделения функционала имеет свои преимущества и недостатки, но, по нашему мнению, он ведет, скорее, к бльшей коммерциализации, чем обусловлен какими-то объективными причинами. Поэтому мы решили пойти немного по другому пути и сделали универсальное устройство, которое представляет из себя свободно программируемый контроллер на базе Linux с модемом в едином корпусе. Это нам позволило в своих проектах практически совсем отказаться от привычных всем щитов автоматизации и прийти к более мобильным решениям.

Под катом этой статьи мы поделимся с Вами тонкостями настройки модема и несколькими полезными скриптами для более стабильного 3G-соединения.

Предпосылки и решения


При разработке своего устройства мы руководствовались тем, что оно должно выходить в мобильный интернет, чтобы подключаться к облачным платформам. Было два пути: напаивать модем на плату, либо использовать mPCIe-разъемы. Мы остановились на втором варианте и предусмотрели сразу два mPCIe-разъема (рисунок 1), поскольку такой вариант нам показался более интересным и гибким. Ведь установка и замена модема занимает считанные секунды, плюс для пользователя появляется необходимая вариативность и он может использовать такие комбинации mPCIe-модулей, которые ему необходимы под конкретный проект. Кроме 3G-модема это может быть LoraWan или Wi-Fi модули. Плюс ко всему mPCIe-решения зарекомендовали себя как достаточно надежные и качественные.

image
Рисунок 1 mPCIe-разъемы

В качестве основного 3G-модуля для нашего устройства мы рассматривали следующие варианты:

  • MikroTik R11e-LTE6
  • Quectel EC25-E
  • YUGA CLM920 TE5
  • HUAWEI MU709s-2p

Однако после проведения тестов наиболее предпочтительным для нас в плане надежности и соотношения цена-качество оказался модем фирмы HUAWEI (рисунок 2). Мы взяли его за основу и устанавливаем опционально в наши устройства. Поэтому в дальнейшем мы будем рассматривать настройку и скрипты относительного модема этой модели. Возможно, этот скрипт будет универсальным и будет полезен для других модемов, однако стабильность работы с другими моделями не гарантируется. Для Rasbian Buster и HUAWEI MU709s-2p всё работает отлично.

image
Рисунок 2 Модем HUAWEI MU709s-2p, установленный на плату устройства

Использование скрипта для перезагрузки 3G-модема


Для более устойчивой и безотказной работы мы написали скрипт, который будет пинговать заданный IP-адрес, а если же определенное в настройках количество пингов не прошло, то GSM-модем перезагрузится, тем самым восстанавливая зависшее сетевое соединение. Стоит отметить, что модем определяется в системе как сетевая карта lan1.

Архив со всеми необходимыми файлами можно скачать по этой ссылке. Также текст самих скриптов представим ниже.

Файл check_inet.sh необходим для проверки наличия интернет соединения. Если заданный IP-адрес не пингуется, то мы дергаем 19 ногу и перезапускаем модем по питанию. Код из себя представляет следующий вид:
#!/bin/bash#count=0;#echo "Start script"#echo 19 > '/sys/class/gpio/export'while [ true ]; do# sleep 30. /home/pi/igate.conf#echo $usb_port#echo 'AT^NDISDUP=1,1,''"'$apn'"''\r\n' #echo 'AT^NDISDUP=1,1,"internet.mts.ru"\r\n' flag=0for ((i = 1; i <= $ping_count; i++)); do#for i in {1..$ping_count}; do #делаем 5 пингов до сервера#ping -I eth1 -c 1 8.8.8.8 > /dev/null || flag=$(($flag+1))ping -I $interface -c 1 $ping_ip || flag=$(($flag+1))sleep 1doneif [ "$flag" -ge "$ping_error" ]; then #если потерь пакетов больше 3х#echo "рестарт модема - начало"#count=$((count+1))#echo $count#рестарт модемаsudo ifconfig eth1 downecho 19 > '/sys/class/gpio/export'echo out > '/sys/class/gpio/gpio19/direction'echo 0 > '/sys/class/gpio/gpio19/value'sleep 1echo 1 > '/sys/class/gpio/gpio19/value'sleep 15sudo ifconfig eth1 upsleep 1#echo -en 'AT^NDISDUP=1,1,"internet.mts.ru"\r\n' > /dev/ttyUSB3#АТ команда для записи настроек точки доступа APNecho -en 'AT^NDISDUP=1,1,''"'$apn'"''\r\n' > $usb_port#echo "рестарт модема - конец"fisleep $timeoutdone 

Файл start_inet.sh запускает check_inet.sh после перезагрузки устройства:
#!/bin/bash### BEGIN INIT INFO# Provides:          start_inet# Required-Start:    $remote_fs $syslog# Required-Stop:     $remote_fs $syslog# Default-Start:     2 3 4 5# Default-Stop:      0 1 6# Short-Description: Example initscript# Description:       This service is used to manage a servo### END INIT INFOcase "$1" in     start)        echo "Starting check_inet"        sudo /home/pi/check_inet.sh > /dev/null 2>&1 &        #/home/pi/check_inet.sh        ;;    stop)        echo "Stopping check_inet"        #killall servod        sudo kill -USR1 $(ps ax | grep 'check_inet' | awk '{print $1}')        ;;    *)        echo "Usage: /etc/init.d/check_inet start|stop"        exit 1        ;;esacexit 0

Также в архиве находится файл конфигурации igate.conf

Последовательность настройки:
1. Добавьте правило соответствия физического подключения COM-порта модема к концентратору USB. Для этого поправьте файл по следующему пути:
sudo nano /etc/udev/rules.d/99-com.rules

2. Добавьте в файл следующую строку:
KERNEL==ttyUSB*, KERNELS==1-1.5:2.4, SYMLINK+=GSM

3. Сохраните правила и перезагрузите устройство. Теперь порт Вашего модема будут определять по удобному псевдониму /dev/GSM;
4. Скачайте архив по предложенной выше ссылки, либо самостоятельно создайте файлы check_inet.sh, start_inet.sh и igate.conf;
5. Скопируйте файл check_inet.sh в папку:
/home/pi/

6. Сделайте файл check_inet.sh исполняемым:
sudo chmod +x /home/pi/check_inet.sh

7. Скопируйте файл start_inet.sh в папку:
/etc/init.d/

8. Сделайте файл start_inet.sh исполняемым:
sudo chmod +x /etc/init.d/start_inet.sh

9. Обновите конфигурацию автозагрузки выполнив команду:
sudo update-rc.d start_inet.sh defaults

10. Скопируйте файл igate.conf в папку:
/home/pi/

11. Настройте файл конфигурации. Ниже представлен файл конфигурации с комментариями:
#ip-адрес пинга. Скрипт будет пытаться пинговать этот ip-адрес, если определенное в параметре [ping_error] количество пингов не прошло, скрипт будет перезагружать GSM-модем, тем самым восстанавливая зависшее сетевое соединение.ping_ip=8.8.8.8#точка доступа APN. Это адрес точки доступа Вашего интернет-провайдера, он выдается вместе с сим-картой.apn=internet.mts.ru#период проверки соединения 3G (период пинга). Период выполнения скрипта. Каждые 30 секунд будет осуществляться проверка пингов.timeout=30#количество пингов. Общее количество пингов.ping_count=5#количество неуспешных пингов для рестарта модема. Количество неуспешных пингов, после которых необходимо выполнять перезагрузку модема. Не может быть больше чем [ping_count]. Процент потерянных пакетов нужно подбирать индивидуально в зависимости от качества покрытия сети.ping_error=3#LAN интерфейс модема. Сетевой интерфейс модема, обычно на устройстве AntexGate определяется как [eth1], посмотреть название можно выполнив команду ifconfiginterface=eth1#USB порт модема. Физический USB порт к которому подключена сетевая карта, обычно на устройстве AntexGate определяется как [ttyUSB4]usb_port=/dev/GSM


Управление скриптом


Запуск в фоновом режиме файла скрипта check_inet.sh:
/etc/init.d/start_inet.sh start

Остановить check_inet.sh:
/etc/init.d/start_inet.sh stop

Скрипт также автоматически запускается после перезагрузки устройства.

Варианты применения устройства


Рассмотрим основные задачи, под которые можно использовать устройство:
  1. Контроллер с выходом в интернет для передачи данных в облако;
  2. 3G-роутер для задач в поле;
  3. Контроллер для умного дома с резервирующим каналом 3G. То есть можно использовать LAN-порт как основной канал связи, а 3G в качестве резервного, чтобы всегда был доступ к устройству;
  4. Базовая станция LoRaWAN, то есть опрос устройств по LoRaWAN и передача данных в облако через сеть 3G или LTE;
  5. Устройство для мониторинга транспорта (подключение по CAN и стыковка с различными сервисами)

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

Подключаемся к станку по изготовлению профлиста и считываем из него прокатную длинну

23.12.2020 16:22:50 | Автор: admin
Год назад на завод, на котором я тогда работал, обратились с просьбой сделать устройство, которое считывает длину листового рулонного железа пройденную через станок по изготовления профлиста. Один из руководителей отказался со словами Не делай добра и зла не получишь. Мой начальник подкинул мне эту халтурку.
При встрече все оказалось довольно банально. Станок выглядел примерно как на картинке
image
Работа его проста. есть два двигателя один тянет лист по горизонтали через валы, которые придают листу форму металлопрофиля, а второй мотор запускает пресс с ножом который этот лист отрезает. Все управляется через контроллер. К нему подключался частотник для управления движком протяжки, датчик для пресса с отрезчиком ну и конечно же энкодер.
Часть схемы станка

После изучения схемы этого станка я принял решение подключится к энкодеру и считывать из него значения на прямую. Вот так он выглядит

Принцип работы простой. К валу приделан диск, на диске отверстия по всему диску. С одной стороны диска стоит фотоприемник, с другой фотопередатчик. При кручение диска с фотоприемника снимаются импульсы, полученные за счет его засветки с диода. В хзависимости от модели на диск приходится разное количество отверстий соответственно и разное количество импульсов на выходе энкодера за один оборот. В моем случае их было 1000. Сигнала выходит в виде дифференциальной пары.
Немного обдумав я накидал схемку на atmege8 и esp8266. Мой напарник собрал ее на монтажке и я начал тестить ее в реальных условиях, а именно оставил ее на ночь на улице, так как на объекте станки находятся в неотапливаемых помещениях. С погодой тоже повезло. Было -35. Вот вам фотка того, как выглядит мой дворовый песик после ночи с такой температурой.

Вот видео с испытаниями сразу же после холода.

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

Все питается через готовый диси конвертер на 2576.
Выходной уровень сигнала энкодера 24 В.
Фото устройство. Оно состоит из двух частей
1 это сам блок для подсчета импульсов с энкодера и передачи их по 485 интерфейсу

2 это блок конвертор из 485 в usb на max485 и ch341g



Ну и финальное видео с испытаний


Ссылочка на прошивку yadi.sk/d/JNHs32sNxpnUpA
Подробнее..

RS485 стандарт промышленных сетей. Какими особенностями обладает микросхема приемопередатчика?

12.02.2021 10:14:08 | Автор: admin

При построении сети для общения между большим количеством устройств, можно задуматься: а какой интерфейс выбрать? У каждого интерфейса есть свои плюсы и минусы, которые определяют их применение: CAN автомобилестроение, RS485/RS232 промышленность, Ethernet потребительская электроника/сервера. Какие фичи микросхемы приёмопередатчика помогают обезопаситься от множества проблем при монтаже и эксплуатации? Как происходит процесс измерений и исследования микросхем приемопередатчиков? Новая микросхема RS485 готова к выходу на рынок!

RS485 что ты такое?


Итак, прежде, чем говорить о самой микросхеме необходимо разобраться что из себя представляет сам стандарт передачи данных.



В RS-485 для передачи и приёма данных используется витая пара. Передача данных осуществляется с помощью дифференциальных сигналов, а это в свою очередь обеспечивает высокую устойчивость к синфазной помехе. Разница напряжений одной полярности означает логическую единицу, разница другой полярности означает логический ноль.


Устойчивость к синфазной помехе

Устойчивость к синфазной помехе является очень важным свойством для приемопередатчиков данного типа когда к сети подключено множество устройств, очень часто возникают всплески напряжения.

На практике для реализации топологии RS485 нужны микросхемы приемо-передатчиков. При этом, разумеется, характеристики микросхемы должны полностью соответствовать требованиям стандарта.

По интерфейсу RS485 при организации сети микросхема, которая передает информацию называется Master, а которая принимает информацию Slave. Максимальное количество устройство в линии может быть 256.


Типовая схема применения микросхем приемо-передатчиков RS485

Для того, чтобы создать сеть на основе RS485 для микроконтроллеров, необходимо использовать дополнительную микросхему приемопередатчика. Микроконтроллер подключается к ней по протоколу UART после чего приемопередатчик начинает вещание.


Мы уже выпускаем серийно микросхему К5559ИН10БSI, но ввиду того как быстро увеличиваются объемы данных, которые передают контроллеры скорости 2.5Мбит уже не достаточно. Итак далее будем рассматривать нашу новую микросхему К5559ИН86SI теперь 30 Мбит. Возникает вопрос: зачем вообще тратить деньги на разработку данной схемы?

Новое поколение RS485 К5559ИН86SI



И правда, зачем выпускать микросхему, аналогов которой на рынке большое множество? Тут, наверное, можно выделить несколько причин:
  • Электросчетчики. Мы долгое время занимаемся разработкой счетчиков, и постепенно переходим на свою элементную базу (контроллер для счетчика). В большинстве счетчиков применяется микросхема RS485 предыдущего поколения К5559ИН10БSI, однако с каждым годом растут объемы передаваемых данных, поэтому необходимо повышать скорость приемопередатчиков.
  • Поддержка напряжения 3В. Постепенно 5-вольтовый стандарт теряет свою актуальность, и новые продукты уже разрабатываются с 3-вольтовыми приемопередатчиками. Этот переход дает существенные преимущества в потребляемой мощности и скорости передачи данных.
  • Pin to pin совместимость. Для выхода на коммерческий рынок мы разработали 2 основные стратегии: поиск маржинальных продуктов (подход детально описан в статье про АЦП) и совместимых по функционалу, выводам и характеристикам микросхем (pin to pin). Для того, чтобы не завязываться на одном потребителе, разработчики аппаратуры часто выбирают несколько совместимых микросхем. Такой подход дает несколько плюсов: независимость от поставщика и шанс удешевить свой продукт, выбрав микросхему по меньшей стоимости. Для микросхемы RS485 30Мбит есть множество аналогов (MAX14783EEUA, ST3485EB, ADM3490E, THVD14xx, и другие). Данный подход можно представить в виде мема:



Микросхема нового поколения приемопередачика RS485 выполнена в простом и дешевом 8-ми выводном пластиковом корпусе SO-8. Такое решение продиктовано потребностью выпуска микросхемы большими партиями с минимальной ценой.


Кристалл получился довольно маленький (1.3мм * 1.3мм), что позволит нам конкурировать в цене с сильными мира сего:


Более подробно о характеристиках микросхемы можно прочитать в спецификации. Сравним основные параметры К5559ИН86SI с зарубежными аналогами.

Сравнение параметров
Параметр К5559ИН86АSI MAX14783EEUA ST3485EB ADM3490E THVD14xx
Напряжение питания 3,05,5 В 3,05,5 В 33,6 В 33,6 В 3,05,5 В
Скорость передачи данных (макс.) 30 Мбит/с 30 Мбит/с 15 Мбит/с 12 Мбит/с 50 Мбит/с
Ток потребления в рабочем режиме 1,4 (макс. 2) мА 1,9 (макс. 4) мА 1,3 (макс. 2,2) мА 1,1 (макс. 2,2) мА 2,4 (макс. 3) мА
Ток потребления в режиме выкл. <2 мкА <10 мкА <1 мкА <10 мкА <1 мкА
Ток утечки по выводам AY, BZ 100...125 мкА 800...1000 мкА 800...1000 мкА 800...1000 мкА -100...125 мкА
Входное сопротивление приемника 96 кОм 12 кОм 24 кОм 12 кОм 96 кОм
Дифференциальное выходное напряжение >1,5 В >1,5 В >1,5 В >1,5 В >1,5 В
Расположение порога переключения приемника, В 0,2100,030 В 0,2000,010 В 0,2000,010 В 0,2000,010 В -0,25-0,05 В
Задержка распространения сигнала передатчика 25 нс 20 нс 30 нс 35 нс 20 нс
Время включения передатчика (приемник включен) 60 нс 30 нс 50 нс 90 нс 50 нс
Время включения передатчика (приемник выключен) 10 мкс 6 мкс 0,05 мкс 0,9 мкс 6 мкс


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

Защита от короткого замыкания


При организации сетей на базе RS485 возможна ситуация, когда передатчик вещает в линию, в которой устойчиво присутствует другой потенциал. Чаще всего такая ситуация встречается при одновременном вещании двух или более передатчиков. Что же будет с микросхемами передатчиков в таком включении? В принципе ничего хорошего. Рассмотрим на простом примере. Подключим напрямую два передатчика (берем только одно соединение для витой пары, для другой все будет тоже самое, но с инверсией): на выходе передатчика 1 будет потенциал +5В (питание), на выходе передатчика 2 будет 0 (Земля).



Транзисторы P1 и N2 будут открыты, и без наличия дополнительной защиты через них будет идти ток короткого замыкания, который будет ограничен только незначительными сопротивлениями самих транзисторов и проводника. Чаще всего в такой ситуации исход один тепловой пробой транзисторов или любимое всеми на хабре слово выгорание.


Угловой фрагмент фотографии кристалла (чипа) микросхемы RS485 неудачной ревизии

По стандарту RS485 напряжение в линии может быть от -7 Вольт до +12 В (это связано с тем, что земли микросхем могут находиться на довольно приличном друг от друга расстоянии более одного километра и разбежаться друг относительно друга). Худшая ситуация, то есть максимальные токи короткого замыкания, могут быть в том случае, когда передатчик вещает логическую единицу, а в линии устойчиво потенциал -7 В и вторая ситуация, когда передатчик вещает логический ноль, а в линии устойчиво потенциал 12 В.

Простейший способ обезопасить схему от КЗ добавить ограничивающие резисторы для каждого транзистора выходного буфера. Суть заключается в следующем: добавляем резисторы в систему, когда ток через них становится довольно приличным по закону Ома $\delta U\ =\ I\cdot R$ напряжение на резисторе начинает расти. Когда $\delta U$ становится равным порогу срабатывания транзистора (на картинке ниже Pfb и Nfb), включается обратная связь, и ток КЗ уходит в насыщение. В одной ревизии мы так и сделали, но это оказался еще тот фейл



Из-за того, что в цепи напряжение может быть выше питания, появляется обратный ток. Если бы система питалась от внешнего источника, он мог бы подавить это напряжение, но он питался от внутреннего LDO (линейный регулятор напряжения). Обратный ток повышал напряжение LDO, и схема сгорала. Решение, которое было придумано, выглядит следующим образом:



Источники опорного тока задают ток через транзисторы N3 и P3. Схема токового зеркала определяет максимальный ток, который может проходить через транзисторы N2 и P2, тем самым ограничивает как прямой ток КЗ, так и обратный. Решение получилось рабочим по моделированию, теперь осталось протестировать в железе.

Переходим к измерениям. Нам понадобится источник питания, точный источник-измеритель Keithley2602А и ПО, позволяющее управлять источником-измерителем и снимать ВАХ. Для автоматизации измерений нашими application инженерами был разработан матричный коммутатор, который позволяет автоматически переключать источник-измеритель к различным выводам микросхемы. Для общения с приборами используем LabView.



На коммутаторе остановимся отдельно, естественно, есть зарубежные аналоги, но конкретно данный экземпляр коммутатора 64х8 собственная разработка нашей команды измерителей, с упором на их каждодневные задачи, позволяет коммутировать 64 вывода микросхемы на 8 каналов (к которым можно подключить какое-либо оборудование), избавляя от действий руками перед каждым измерением.

Ну и конечно же сам измерительный прибор:



Итого, получаем следующие ВАХ (Вольт-Амперные-Характеристики) для выхода передатчика:



Из ВАХ мы видим следующее: в худших случаях при устойчивых потенциалах в линии -7 В или 12 В, ток микросхемы ограничен примерно на уровне 90 мА.

Транзисторы микросхемы при коротком замыкании (при потенциале в линии) не разрушаются! Защита от короткого замыкания работает проверено.

Однако если подержать в режиме КЗ какое-то время (около 2-х минут), то сработает следующая фича термозащита и схема выключится.

Встроенная термозащита


Защита от перегрева встроена почти во все зарубежные микросхемы приемопередатчиков RS485 и является неотъемлемой функциональной частью схемы. При повышенной температуре параметры транзисторов начинают деградировать, а при токе короткого замыкания разогрев неизбежен и важно вовремя перевести микросхему в выключенное состояние.

Ситуацию с перегревом усугубляет и пластиковый корпус, который весьма плохо отводит тепло. Да и топология кристалла прошла серьезную оптимизацию, чтоб разместить максимум функционала на минимум площади. Если провести аналогию с реальным миром, то пластиковый корпус для кристалла это как куртка-пуховик для человека.

Гарантированный диапазон температур, в котором должна функционировать микросхема: 40+85 С.

В К5559ИН86АSI порог срабатывания термодатчика расположен в районе температуры 165 С при достижении этого значения произойдет выключение микросхемы. Но это речь о температуре кристалла, а не корпуса, цифра 165 С также не случайна: при такой температуре кристалл стопроцентно не получит повреждений и продолжит функционировать после остывания. Рабочий же диапазон температур в документации приводится относительно температуры среды, да и, справедливости ради, ее проще контролировать.

Проверка работы микросхемы в температуре происходила при помощи испытательной камеры тепла и холода SU-262. Камера позволяет задать температуру от 60 С до 150 С.


Испытательная камера тепла и холода вид снаружи


Испытательная камера тепла и холода вид внутри

В процессе измерений нужно проверить следующее: какой запас по температуре есть у кристалла в рабочем режиме?

Подключаем генератор ко входу микросхемы, и смотрим сигнал выхода. При данном тесте температура внешней среды меняется в диапазоне 60 С до 125 С. Итого на выходе передатчика видим следующую осциллограмму:


Осциллограмма: DI информационный входной сигнал передачика, AY, BY выходные сигналы передатчика, RO выходной сигнал приёмника.

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

Практически во всех микросхемах существует ESD защита (защита от электростатических разрядов). В простейшем случае представляет из себя 2 диода, используемых в обратном включении (один на землю, другой на питание). Воспользуемся тем свойством, что физика полупроводников такова, что напряжение падения на диоде (pn-переходе) зависит от температуры. Используем следующую схему включения:


Используем ту же камеру тепла и холода. Задача стоит следующая: построить зависимость напряжения на диоде от температуры, что поможет вычислить температурный коэффициент. Режим измерения производился с выключенной схемой, которая исключает саморазогрев, то есть позволяет нам откалибровать шкалу:
  • Питание на микросхему не подается (VDD = 0)
  • К цифровому выводу DI подключаем источник тока 10мкА

Итого получаем следующую зависимость:


Получено следующее значение температурного коэффициента напряжения: 1,78мВ/С.
Откалибровав шкалу, можно перейти к оценке разогрева микросхемы внутри пластиково корпуса в рабочем режиме при штатных нагрузках и в случае короткого замыкания выходных каскадов. Режим измерения, следующий:
  • напряжения питания 5,5 В (VDD = 5,5 В)
  • вывод nRE низкий уровень, вывод DE высокий уровень;
  • тестируемый вывод DI;
  • установленный на источнике ток диода 10 мкА (Idiode=10 мкА);
  • нагрузка 54 Ома.

Наверное, знающие люди скажут: зачем такие извращения и почему нельзя заложить было в схему специальный тестовый режим для измерения температуры, однако именно такой подход позволил нам сравнить нашу микросхему с аналогом MAX1478 (ведь для нас это черный ящик):

Температура окружающей среды, С Температура на кристалле, С
К5559ИН86АSI MAX1478
35 52,21 53,82
85 100,16 108,1
100 126,04 124,24

Вывод-1: кристалл нагревается в рабочем режиме на 26 С при температуре внешней среды 100 градусов. Порог срабатывания термозащиты (165 С) еще далеко.
Вывод-2: в режиме короткого замыкания термозащита срабатывает, по имеющимся измерениям уже при 55 С внешней среды, но микросхема не выходит из строя и через некоторое время после того, как она охлаждается может снова функционировать.

Так мы экспериментально подтвердили, что разработанные схемотехнические решения, надежно защищают микросхему от нештатных ситуаций (таких ка КЗ или конфликт драйверов) и не оказывает влияния на штатные режимы.

Заключение


В данной статье постарался познакомить читателей с особенностями такого популярного интерфейса, как RS485. Процесс разработки микросхемы очень тесно переплетается с процессами измерений и прототипирования. И тут большая заслуга наших application инженеров, которые постоянно находят у нас косяки и недостатки. Наверное, двигатель любого прогресса это конструктивная критика.

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

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru