Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Альтернативні джерела енергії 3.doc
Скачиваний:
57
Добавлен:
18.11.2018
Размер:
12.2 Mб
Скачать

6.5. Робота мікроконтролерів в режимі реального часу

Для такого управління комплектом малопотужної енергетичної установки (КМЕУ) мікроконтролер повинен працювати в режимі реального часу, тобто з заданим темпом, як це показано на діаграмі (рис. 6.5.1).

Рис 6.5.1 Діаграма роботи МК в режимі реального часу .

За повторюємий інтервал часу То мікроконтролер повинен виконати, як мінімум, 3 основних програми, а саме: програма введення даних А, програма обробки даних В та програма виводу даних С.

Але такого режиму роботи мікроконтролера, як правило, буває недостатньо, оскільки більшість алгоритмів використовують з різними темпами роботи МК.

На діаграмі (рис. 6.5.2) показана робота МК з трьома темпами виконання обчислювальних задач.

Рис. 6.5.2 Діаграма роботи мікроконтролера в режимі реального часу з трьома темами Т1, Т2, Т3.

Відповідно до діагностики (рис. 6.5.2) мікроконтролер працює в трьох темпах виконання обчислювальних задач. При чому з темпом Т3 виконується задачі за термірмін t3, з темпом Т2 – відповідно за термін t2, після того, як виконались задачі за темпом Т3, а з темпом Т1 виконуються задачі за термін t1, після того, як виконались задачі з темпами Т3 таТ2.

Між темпами Т1, Т2 та Т3 і існують постійні співвідношення:

n= T1/T2, m= T2/T3 (6.5.1)

На основі діаграми (рис. 6.5.2) та співвідношень (6.5.1) можна визначити наступні залежності:

  1. 3–t3)· m – резерв часу для роботи мікроконтролера з темпами Т2 і Т1;

  2. 3–t3)·m·n +(T2–t2)·n - резерв часу для роботи мікроконтролера з темпом Т1;

  3. 3–t3)·m·n+(T2–t2)·n+T1–t 2 - вільний не використовуємий час.

В загальному вигляді функцію F(t1, t2, t3) невикористаного резерву часу можна записати:

F (t1, t2, t3) = T3·m·n –t3·m·n – t2·n – t1>0 (6.5.2)

Функція F (t1, t2, t3) повинна бути завжди позитивною, інакше мікроконтролер не буде справлятися з роботою в режимі реального часу.

Резерв R (t1, t2, t3) реального часу можна записати і в такому вигляді:

R (t1, t2, t3) = Т1 – t 3·m·n – t2·n – t1>0 (6.5.3)

Якщо враховувати швидкодію мікроконтролера, тобто число V операцій, які виконуються за 1 сек., а також необхідне число операцій К1, К2. К3, які повинні бути виконані відповідно за терміни t1, t2, t3; то нерівність (7.5.3) можна записати в наступному вигляді:

R (К1, К2, К3)= V·T1 – K3·m·n – К2·n – К1>0 (6.5.4)

За допомогою формули (6.5.2), яка визначає функцію F(t1,t2,t3) можна виконати номограму (рис. 6.5.3 ).

Номограма (рис. 6.5.3) дозволяє наглядно визначити оптимальний процес завантаження мікроконтролера в режимі реального часу. Якщо наприклад, МК занятий на протязі часу t22* роботою з темпом Т2 і на протязі часу t32* роботою з темпом Т3, то в режимі Т1 він може працювати не більше, ніж термін t12. Аналогічно, якщо має місце термін занятості t23** з темпом Т2 і відповідно t33** з темпом Т3, то в режимі з темпом Т1 мікроконтролер може працювати не більше як час t13.

Рис. 6.5.3. Номограма оцінок термінів t1, t2, t3 виконання задач в мікроконтролера в режимі реального часу.

Запропонований метод визначення необхідного завантаження мікроконтролера, який працює з трьома темпами роботи Т1,Т2,Т3 відповідно до номограми (рис. 6.5.3) можна легко розширити шляхом збільшення необхідних темпів Ті роботи в режимі реального часу способом ешелонування.

Рис.6.5.4 Діаграма можливості розширення числа темпів роботи з трьох до п’яти в режимі реального часу.

Рис. 6.5.4 доповнює рис. 6.5.2 за допомогою цього рисунка показана можливість збільшення числа темпів роботи від трьох (Т1,Т2,Т3) до п’яти (Т1,Т2,Т3,Т4,Т5). Темп Т1 містить темпи Т2, Т3, як це показано на рис. 6.5.2.

При цьому співвідношення (6.5.2) можна легко розширити з метою врахування темпів Т4 і Т5 відповідно до формули:

(6.5.5)

де m1n1 – коефіцієнти співвідношення між темпами Т4 і Т5 відповідно до виразів m1=T4/T1, n1=T5/T4.

Аналогічно до номограми (рис. 6.5.3) можна виконати номограму оцінок термінів t1,t4,t5 рішення задач мікроконтролера в режимі реального часу.

Відповідно до нової номограми можна визначити залежність часу роботи t5, якщо задані часи роботи t1,t4.

Потім на другому етапі ешелонування відповідно до номоргами (рис. 6.5.3) можна визначити терміни роботи t2,t3.

Такий метод ешелонування пошуку оптимального завантаження мікроконтролера являється точним, але складним і не достатньо зручним.

Із курсу алгебри відомо таке віжливе поняття, як квадратична форма К.ф., яку можна визначити відповідно до формули:

(6.5.6)

де |f3,f2,f1| – вектор частот потоків вимог для роботи мікроконтролера в одному з трьох відповідних режимів; Т – квадратна матриця виду:

(6.5.7)

Відомо, що квадратична форма (6.5.6) може мати мінімальне значення К.ф.min , якщо матриця Т позтивно визначена. Це буде мати місце тоді, коли визначник матриці Т буде позитивним.

В свою чергу цей визначник |Т| може бути позитивним при виконанні умови, коли в кожній строчці діагональний елемент матриці Т буде більше суми недіагональних елементів , тобто:

(6.5.8)

При виконанні умови (6.5.8) легко знайти мінімільне значення квадратичної форми (6.5.6).

Наприклад методом Гауса-Зейделя послідовного перебору в просторі зміни аргументів f1,f2,...fk можна визначити експериментальне значення відповідно до задачі оптимального завантаження мікроконтролера, який повинен працювати в режимі реального часу з різними к темпами роботи. Відповідно до цього методу можна скласти алгоритм оптимального завантаження мікроконтролера.