Комуникация между програма и устройство

от Wiki

Версия от 01:27, 26 юли 2019 на Виктор Павлов (Беседа | приноси)
(разл) ←По-стара версия | преглед на текущата версия (разл) | По-нова версия→ (разл)
Направо към: навигация, търсене

Програмите комуникират с периферните устройства като изпращат пакети от данни. Тези пакети съдържат команди, отговори, статуси и друга информация, която управлява самото устройство и връща резултат към приложението. Понякога единственият начин да се определи поведението на устройството, неговата работа и допълнителни данни е да се провери самата комуникация с него на програмно ниво. Тъй като това е достатъчно сложна задача, в продуктите на Microinvest има специализирана технология за проследяване на комуникацията.

Съдържание

Основни принципи

Стандартните технологии за управление на периферните устройства включват комуникация по COM, LAN, WiFi и Bluetooth канали. В своята същност всички тези канали са аналогични, като могат да се дефинират 2 страни:

  1. Инициатор на комуникацията, обикновено това е компютъра и софтуера в него;
  2. Приемник на комуникацията, това е крайното устройство, което бива управлявано.

Наблюдението на тези два обекта и информацията, която те се предават е достатъчно за да се определи структурата и данните, които се обменят, като това дава еднозначно определение на техния статус.
В продуктите на Microinvest има специализирана технология за подпомагане на процеса за анализ на обмена на информация. Тази информация се базира върху връзката между устройствата и предаването и приемане на информационни пакети.

Обмен между устройства

Обменът на информационни пакети между устройствата има няколко различни етапа:

  1. Медия за комуникация между устройствата, например COM, LAN, WiFi и Bluetooth канал;
  2. Съдържание на информацията, която се предава и приема от компютъра към устройството;
  3. Пакет със защита, чек-суми и системна информация, който пакет е обвивка на комуникацията и служи за синхронизация на началото и края на индивидуалното съобщение. Наличието на чек-сума позволява да се определи дали целия пакет е предаден и приет правилно, без изкривяване и без загуба на информация.

Като следствие от описаните точки, всяка комуникация може да се раздели на два елементарни процеса:

  1. Запитване от едното устройство към другото. От страната на софтуера на Microinvest този процес е запис (Write), с което компютърът (и програмата на Microinvest) изпращат и записват данни към устройството. Тези редове се оцветяват в син цвят;
  2. Отговор от другото устройство. От страната на софтуера на Microinvest този процес е четене (Read), с което компютърът (и програмата на Microinvest) получават и прочитат данни от устройството. Тези редове се оцветяват в червен цвят.

С такава проста интерпретация на технологията, двете устройства обменят данни, като компютърът "пише" данни, а след това ги "прочита". Точно в този вид е представена и комуникацията, когато се активират механизмите за проследяване на комуникацията.
Важно е да се знае, че ако има само от единия цвят на комуникация, то едното устройство се опитва да предава, но няма отговор от другото, което означава, че има или проблем с кабел или с номера на СОМ порта или със скорост на обмен.

Проследяване на комуникацията

В случаите, когато има определени трудности при връзката и работата на периферно устройство, продуктите на Microinvest предлагат мощен механизъм за точно проследяване на комуникацията между устройствата. Включването на проследяване на комуникацията става с универсалния параметър /PortMon в иконата на отделния продукт. Този параметър активира двустранно проследяване на изпращането и получаването на информационните пакети, които се съхраняват в точно дефиниран Log файл.

Log файл на комуникацията

При добавяне на параметър /PortMon в иконата на продукт на Microinvest се стартира непрекъснат процес за проследяване на комуникацията с периферните устройства. Всеки един пакет от или към компютъра се записва с неговите данни в предварително определен файл. Местоположението на този файл е в папка C:\ProgramData\Microinvest\Device Manager\Logs и името на файла е PortMonitor.html
Файлът съдържа цялата комуникация с всички периферни устройства от момента на поставяне на параметъра в иконата на продукта или от момента, в който този файл е бил изтрит. Това е важно за да се определи от кой момент натам се записва информацията за обмена между устройствата.

Съвети

Активиране на параметъра /PortMon се прави когато има трудности при комуникация с периферните устройства. Създаденият файл с данни позволява да се анализират пакетите и обмена между устройствата, като това позволява на специалистите да проследят "разговорът" между различните устройства и какво е тяхното поведение. Описаните стъпки могат да направят този процес още по-лесен:

  1. Параметърът /PortMon се поставя преди да се започне проследяване на комуникацията с устройството;
  2. Желателно е да се провери дали няма стар файл с Log на комуникацията. Ако има такъв файл, той се преименува или изтрива за да не се натрупва излишна информация;
  3. Прави се една или две операции с устройството. Полученият Log файл се изпраща на разработчиците на софтуера, придружен с описание на проблема или снимка на чек, екран, отпечатан документ, етикет или друга информация от периферното устройство. Това позволява да се види обмена на информацията и получения резултат от този обмен.

Анализът на комуникацията и отстраняването на грешки е двустранен процес, от една страна разработчиците на програмата извършват анализ на действията на периферното устройство, от друга страна самите клиенти подават необходимата информация за локализиране на възможните проблеми (вид на връзката, действия на оператора, статус на устройството и подобни).

Кратък списък с необходима информация

С цел подпомагане на процеса за проверка на комуникацията между периферните устройства, желателно е клиентите да предоставят следната информация:

  1. Точен модел на периферното устройство;
  2. Версия и дата на програмата. Версия на Windows;
  3. Вид на базата от данни;
  4. Съдържание на настройките и log файловете от програмата;
  5. Описание на последователността от действия, довели до появяването на посочения проблем.

Като минимални изисквания, наличието на тази информация е някакво начало за анализ на проблемите при клиента.

Заключение

Възникването, намирането, анализа и решаване на евентуални проблеми с периферни устройства е двустранен процес. Техническите специалисти на производителя трябва да работят в тясно сътрудничество с клиентите за възпроизвеждане на проблемите и тяхното решавате. Добрият стил на общуване дава максимално обширна информация за предприемане на съответни действия. Указаният тук кратък лист на необходимата информация гарантира базовата информация за започване действия за решаване на проблемите.

Полезни връзки

Лични инструменти