Наша сеть партнеров Banwar
Вступ. Потреба в точних вимірах фізичних величин обумовлює безперервне вдосконалення засобів вимірювань. Важливим класом засобів вимірювань є датчики. Для підвищення метрологічних і експлуатаційних характеристик датчиків в останні 7-10 років застосовуються цифрові методи обробки вимірювальних сигналів, при цьому передача даних виконується по цифровому каналу зв'язку.
Цифрова обробка сигналів в датчику реалізується вбудованою електронікою, що містить аналого-цифровий перетворювач (АЦП), процесорний ядро, незалежну пам'ять, цифровий інтерфейс і інші елементи (стабілізатори харчування, погоджують підсилювачі і т.д.). Фактично, вбудована електроніка являє собою спеціальну обчислювальну машину, яка виконує два завдання, в загальному випадку не пов'язані між собою.
Перше завдання - підвищення метрологічних характеристик датчика - вирішується алгоритмами цифрової корекції нелінійності і додаткових похибок. Алгоритми корекції спираються на метод допоміжних вимірювань [1, 2]. Друге завдання - підвищення експлуатаційних характеристик - полягає в забезпеченні управління параметрами роботи датчика за рахунок обміну даними по спеціалізованій мережі передачі даних. Такі мережі часто мають шинну топологію з одним провідним пристроєм, керуючим обміном даними. При цьому датчики працюють в режимі ведених пристроїв.
Обидві описані завдання вирішуються на етапі проектування цифрових датчиків. На цьому етапі виникає необхідність в інструментальному засобі моделювання роботи передбачуваних рішень.
Проектування. При проектуванні цифрового датчика необхідно будувати структурно-функціональну модель датчика, оптимізувати її за критеріями мінімізації похибок, енергоспоживання і максимізації швидкодії, а також збалансовано розподіляти функції між апаратною частиною і вбудованим програмним забезпеченням (ПЗ), а в апаратної частини - між аналогової і цифрової складовими .
Принциповою відмінністю, що виділяють цифрові датчики фізичних величин в перспективний клас безперервно-дискретних систем - клас вимірювально-обчислювальних пристроїв, є поєднання досягнень вимірювальної та обчислювальної техніки в малогабаритних малопотужних високоточних приладах. Найбільш відповідальним і складним етапом проектування таких пристроїв є розробка алгоритму функціонування. Алгоритм реалізується у вбудованому ПЗ, таким чином, потрібно визначати структуру вбудованого ПО. Природним рішенням служать кінцеві автомати, так як [3] «... автомат (від грецького automatos - автоматичний) - це абстрактний і ідеалізований механізм виконання дій зі знаковими, символьними конструкціями ...». Команди, одержувані датчиком, можуть розглядатися як символи мови обміну даними з датчиком [4] і являють собою безліч вхідних сигналів автомата. Склад цієї множини, а також безлічі вихідних сигналів диктується вимогами до датчика.
Завдання побудови автомата зводиться до визначення безлічі станів, функції переходів і функції виходів. Для цього доцільно створити деяку середовище, що імітує поведінку автомата всвой роду штучної дійсності. Штучна дійсність, вона ж - модель [5], дозволяє вирішити задачу розробки структури приладу, схеми зв'язків і графа переходів кінцевого автомата на ранніх етапах проектування цифрових датчиків.
Імітаційна модель цифрового датчика тиску. Розглянемо приклад імітаційної моделі цифрового датчика тиску. Датчик містить чутливі елементи (ЧЕ) тиску і температури, двонаправлений цифровий канал і аналоговий вихід по напрузі, необхідний на час перехідного періоду до цифрових каналів зв'язку в вимірювальних системах. Датчик отримує команди по цифровому інтерфейсу, виконує їх і відправляє відповіді. Як інструментальний засіб моделювання добре підходить середовищі MATLAB / Simulink. На малюнку 1 показана модель датчика з оточенням.
Малюнок 1 - Імітаційна модель цифрового датчика тиску
У моделі імітується обмін даними на канальному рівні інтерфейсу RS -485. Підсистема «Software» (малюнок 2) подає датчику команду і приймає відповідь.
Малюнок 2 - Підсистема «Software»
Подача команди імітується передачею значень байтів команди, які визначаються кодом команди (константа ComCode) і номером датчика (константа SensNumber), за допомогою підсистеми «UART», яка перетворює значення байта в послідовність бітів, обрамляє її старт і стоп-бітами і передає в послідовний канал .
Структура датчика (рисунок 3) містить вимірювальний канал, АЦП, пристрій цифрової обробки сигналів (ЦОС), цифровий інтерфейс і аналоговий інтерфейс.
Малюнок 3 - Підсистема «Digital_Pressure_Sensor»
Аналоговий інтерфейс реалізований масштабатором. Вимірювальний канал (рисунок 4) імітує тензометричний кремнієвий ЧЕ тиску, сигнал якого посилюється операційним підсилювачем (ОУ), ЧЕ температури на терморезистор і стабілізатор живлення тензомоста і подільника напруг з терморезистором в нижньому плечі. Опорна напруга, напруга зсуву ОУ і коефіцієнт посилення внутрішнього підсилювача, що передує АЦП, задається пристроєм ЦГЗ.
Рісунок4 - Підсистема «MeasurementChannel»
АЦП моделюється (рісунок5) блоками «IdealizedADCQuantizer» в підсистемі «ADCchannels». Час перетворення становить 30 мкс, розрядність - 12 біт. Перетворення запускається сигналом «StartConversion» від пристрою ЦОС. По завершенню перетворення підсистема формує ознака «Завершення АЦ-перетворення».
Рісунок5 - Підсистема «ADC»
Підсистема «DigitalInterface» (малюнок 6) імітує універсальний асинхронний приймач-передавач, який приймає або передає дані по цифровому каналу. Прийом значень байтів з бітів, що надходять з каналу, і формування ознаки «Завершення прийому» реалізовано регістром зсуву в підсистемі «ReceiveCommand» (малюнок 7).
Рісунок6 - Підсистема «DigitalInterface»
Рісунок7 - Підсистема «ReceiveCommand»
Формування бітів, переданих в канал, і ознаки «Завершення передачі» реалізовано підсистемою «TransmitResponse» (малюнок 8), що використовує підсистему «UART».
Рісунок8 - Підсистема «TransmitResponse»
Пристрій ЦГЗ моделюється підсистемою «DSP _Based _on _MCU» (малюнок 9), Підсистема містить підсистеми цифро-аналогових перетворювачів (цапову), які задають напруга зсуву ОУ і вихідна напруга, що посилюється аналоговим інтерфейсом, що представляє собою аналоговий вимірювальний сигнал датчика тиску. Крім цапову, підсистема «DSP _Based _on _MCU» містить в собі підсистему «Software _and _Memory», яка моделює незалежну пам'ять датчика (підсистема «Flash _Memory») і вбудоване програмне забезпечення (Stateflow -діаграмма «Embedded _Software»). Підсистема «Flash _Memory» построенанаблоках «DataStoreMemory», «DataStoreWrite» і «DataStoreRead». Stateflow -діаграмма «Embedded _Software» є не чим іншим, як схемою зв'язків кінцевого автомата датчика. Таким чином, апаратна частина цифрового датчика тиску моделюється засобами Simulink, програмна - засобами Stateflow.
Рісунок9 - Підсистема «DSP _Based _on _MCU»
Граф переходів кінцевого автомата показаний на малюнку 10. Він містить 5 станів, основним з яких є робочий стан датчика «Sensor _Working» (рисунок 11). За виставленні приймачем команд ознаки RI в 1 у разі переходу до стан прийому команди «Command _Receiving» (рисунок 13). По прийому значення, прийнятого ознакою завершення команди (в прикладі - 33), у разі переходу до стан аналізу прийнятої команди «Command _Analysis» (рисунок 13). У стані аналізу перевіряється довжина прийнятої команди (допускаються довжини 3 байта і 15 байт) і значення логічної змінної «Flag». Зі стану аналізу є три переходи в стан виконання команд «Command _Executing» (рисунок 14). У стані виконання команд порівнюються номер датчика з номером, отриманим в команді, і при їх збігу у разі переходу до відповідного стану виконання команди (приклад - стан виконання команди «Beta», малюнок 15).
Рісунок10 - Stateflow -діаграмма графа переходів кінцевого автомата датчика
Рісунок11 - Stateflow -діаграмма робочого стану датчика
В робочому стані датчик визначає режим роботи (ознака зберігається в незалежній пам'яті, ставить одне з трьох режимів: робочий, перевірка, настройка) і переходить або в стан обчислення коефіцієнтів апроксимуючих кривих (в режимах робочому і перевірки), або в стан вимірювань (в режимі перевірки, малюнок 12). Після отримання кодів АЦП тиску і температури в режимах робочому і перевірки у разі переходу до стан корекції похибок і завдання вихідної напруги датчика.
Реалізація програмно-апаратного взаємодії в Stateflow -діаграммах полягає в завданні керуючих сигналів для зовнішніх периферійних вузлів, таких як АЦП, приймально-передавач, ЦАПи (наприклад, сигнали StartConv, InterfaceControl, TI _clear, RI _clear) і виконанні умовних переходів зі стану в стан за значеннями сигналів від зовнішніх периферійних вузлів (наприклад, ADCINT, TI, RI).
Рісунок12 - Stateflow -діаграмма стану вимірювань
Рісунок13 - Stateflow -діаграмми станів прийому і аналізу команд
Рісунок14 - Stateflow -діаграмма стану виконання команд
Рісунок15 - Stateflow -діаграмма стану виконання команди підстроювання початкового сигналу
На малюнку 16 наведено приклад обміну даними по каналу связіс швидкістю 9600 біт / с. Датчик отримує команду «Beta» (вектор {35,207,37,48,52,48,48,49,38,80,90,69,82,79,33}, осцилограма зліва вгорі), що надходить потоком бітів (осцилограма зліва внизу ), виконує її і відправляє відповідь «Phi» (вектор {34,206,37,48,52,48,48,49,38,80,90,69,79,75,33}, осцилограма справа вгорі) потоком бітів (осцилограма праворуч внизу). По осі часу на малюнку 16 відкладено реальний час в секундах.
Рісунок16 - Команда датчику, відповідь датчика
Висновок. Розглянута модель являє собою інструментальний засіб для перевірки варіантів проектних рішень на ранніх етапах розробки цифрових датчиків. Вона дозволяє в короткий термін відпрацювати схему зв'язків кінцевого автомата датчика, визначити його безліч станів, функцію переходів і функцію виходів, що занадто багато роботи робити «вручну». Задані у вимогах до датчика безлічі вхідних і вихідних сигналів і певні на моделі схема зв'язків, безліч станів і функції переходів і виходів є рішення задачі проектування програмно-апаратних засобів цифрових датчиків до рівня підпрограм, таких як обчислювальні функції, драйвери периферійних вузлів і т.д .
Крім того, імітаційна модель уможливлює апробацію різних варіантів побудови структури датчика, розподілу функцій між аналогової і цифрової електронікою, між апаратної і програмної частинами, а також апробацію різних параметрів окремих вузлів. Фактично, імітаційна модель служить середовищем розробки структурно-функціональної моделі і кінцевого автомата датчика. За структурно-функціональної моделі будується функціональна схема датчика, за кінцевим автомату розробляється вбудоване програмне забезпечення датчика.
Таким чином, розглянутий підхід до імітаційного моделювання структур і алгоритмів роботи цифрових датчиків полягає в створенні штучної дійсності - моделі, що відтворює умови роботи датчиків для вирішення різноманітних завдань проектування цифрових датчиків фізичних величин.
література:
Земельман М.А. Автоматична корекція похибок вимірювальних пристроїв. - М., Видавництво стандартів, 1972. - 199 с.
Туз Ю.М. Структурні методи підвищення точності вимірювальних устройств.- К .: «Вища школа», 1976, - 256 с.
Твердохлебов В.А. Геометричні образи законів функціонування автоматів. - Саратов: ТОВ Видавництво «Наукова книга», 2008. - 183 с.
Катков А.Н. Методика автоматизованого настроювання цифрових датчиків // Проблеми автоматизації та управління в технічних системах: тр. Міжнар. наук.-техн. конф. (М Пенза, 19-22 квітня 2011): в 2 т. / Під ред. д.т.н., професора М.А. Щербакова. - Пенза: Изд-во ПГУ, 2011. - 1 т. 318 с. с. 275-276.
Акофф Р., Емері Ф. Про цілеспрямованих системах. - М .: Сов. Радіо, 1974, - 272 с.
Основні терміни (генеруються автоматично): Підсистема, малюнок, датчик, імітаційна модель, UART, кінцевий автомат датчика, схема зв'язків, вбудоване програмне забезпечення, аналоговий інтерфейс, штучна дійсність.