ання ПО мова програмування C, так як є кошти для перетворення програми на С в машинний код, а жорсткі вимоги по швидкодії відсутні.
Фрагмент програми представлений в додатку Д. У цьому фрагменті представлена ??функція викликається з функції обробки переривання від таймера, коли з'ясовується, що необхідно змінити режим охолодження.
. Розробка системи діагностування апаратних засобів
Підпрограми тестування прошиті в постійній пам'яті мікроконтролера. Для тестування справності ПЗУ застосовується обчислення суми за модулем 2 16 Усіх заповнених кодом осередків і порівняння результату обчислень з числом, записаним в ПЗУ.
У таблиці 2 наведені дані по виявляє здатності тестів ОЗУ і тривалості їх виконання [9].
Таблиця 2 - Тести ОЗУ
Виявлені отказиТестВремяВ матриці дешіфраторахвиполненіяОтсут-ствие запісіЛожная запісьЛожное зчитуючи-ніеОтсутст-віє виборкіМного-кратна виборкаНеодно-значна виборкаСканірующій4N - 00000Шахматний4N + - 0-00Зп і Сч/Зп вперед і назад5 N ++ ---- Маршірующій10N ++ ----Додаткова адресація10N + - + - + Крест128N ++ - - 0Бегущій2 (N 2 + 2N) +++ --- Пінг-понг2 (2 N 2 + 2N) ++++++ Галопірующій2 (3 N 2 + 3N) + +++++ Примітка:
• «+» виявляє;
• «-» - не виявляє;
• «0» - неефективне виявлення.
З наведених у таблиці 3 тестів тільки тести пінг-понг і галопуюче дозволяють виявляти всі види відмов.
Тест пінг-понг, очевидно, виконається швидше тесту галопуюче. Час звернення до однієї комірки пам'яті приймемо рівним 7 нс (одному такту).
* 2 (2 * 20480 2 + 2 * 20480)=11,7 с
Однак враховуючи час виконання і які виявляються відмови, можливо переважніше вибрати комбінацію тестів «зп і рах/зп вперед і назад», «додаткова адресація» і «скануючий»?
Тести виконуються в порядку зростання часу їх виконання:
Скануючий. У всі осередки записується фоновий набір всі нулі. Далі виробляється послідовне зчитування і порівняння з еталоном (перевірка). Після цього в усі осередки записується новий фоновий набір всі одиниці і знову проводиться послідовне зчитування і порівняння з еталоном (перевірка).
Час виконання: 7 * 4 * 20480=573440 нс
Запис і зчитування/запис вперед і назад. Попередньо в усі осередки записується фоновий набір всі нулі (запис). Далі виробляється послідовне зчитування і порівняння з еталоном (перевірка). Після перевірки кожної чергової осередки в неї записується інформація в зворотному коді, тобто всі 1 (зчитування/запис). Після перевірки останньої комірки і запису в неї 1 процедура повторюється від старшого адреси до молодшого з читанням одиниць, порівнянням їх з еталоном і записом нулів.
Час виконання: 7 * 5 * 20480=716800 нс
Додаткова адресація. У всі осередки записується фоновий набір всі нулі (або все 1 ). Далі проводиться зчитування з нульовою комірки з перевіркою (порівняння з еталоном) і записом в цей осередок протилежної інформації. Кожне друге звернення виконується за адресою, код якого є доповненням до попереднього.
Час виконання: 7 * 10 * 20 480=1433600 нс
Тест пінг-понг дозволяє виявити всі види відмов, однак він має велике час виконання (11 секунд). Враховуючи час виконання і які виявляються відмови, можливо було б переважніше вибрати комбінацію тестів «зп і рах/зп вперед і назад», «додаткова адресація» і «скануючий», загальний час виконання яких становить менше 1 секунди, однак, реалізація їх вимагає великих трудових витрат і враховуючи, що тест ОЗУ буде проходити раз на рік (холодильники працюють роками) при включенні електричної розетки холодильника в мережу, то 11 секунд для тесту пінг-понг в світлі цих факторів абсолютно не кретічни.
. Розрахунок імовірності безвідмовної роботи
Так як передбачається використання пристрою в кімнатних умовах, коли на пристрій не вплине підвищена вологість, вібрації і тому подібні несприятливі умови середовища, поправочні коефіцієнти при розрахунку надійність слід прийняти рівними одиниці. Так як функціональна схема не дозволяє точно визначити кількість майбутніх пайок, враховуючи, що мікроконтролер має 179 висновків, приймемо що очікується 300 пайок. Розрахунок сумарної інтенсивності відмов наведено в таблиці 3.
Таблиця 3
ЕлементКолічество, NІнтенсівность відмови, * 10 - 6, 1/часНагрузка, RРезультат, * 10 - 6 БИС10,3000,90,27Пайка3000,00110,3Резистор100,091,51,35Реле10,740,80,59Индикатор40,40,91,44Зуммер10,150,20,03Итого3,98
...