Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 29.07.2011, 10:46  
kudryvzev99
Прохожий
 
Регистрация: 30.09.2005
Сообщений: 3
Сказал спасибо: 10
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
kudryvzev99 на пути к лучшему
По умолчанию Тестирование работоспособности контроллера

Здравствуйте, уважаемые знатоки.
Mega128 управляет некоторым тех.процессом. При зависании или выходе из строя процессора (или отдельных его блоков- например одного или нескольких портов), управление необходимо передать аналоговой схеме и зажечь большую красную лампу АВАРИЯ. Как оценить степень работоспособности камня? Сейчас в голову приходят только две идеи и обе пока не особо нравятся.
1. Дёргать ногой одного из портов в основном цикле и интегрировать получившийся меандр. Если камень жив и в сознании, то интегральный результат должен быть больше нуля, но меньше питания.
Минусы такого подхода - метод косвенный, мудрёная аналоговая схемотехника с двухполярным питанием, (несколькими операционниками?), (аналоговым компаратором?), конденсаторами и резисторами. Кроме того, если в алгоритме придётся чего-нибудь менять, соответственно дописывая строчки кода, то период меандра изменится...Да и вообще не хочется переходить к аналоговой схемотехнике...
2. Второй подход чисто цифровой. Источник тактирования процессора- внешний. Тактирующий меандр заводим дополнительно на вход внешнего, по отношению к процессору, цифрового счётчика-сумматора и накапливаем результат. В основном цикле процессора также циклически увеличиваем содержимое одного из регистров и выбрасываем в порт. При помощи цифрового компаратора (ещё один корпус на плате) сравниваем значение счётчика-сумматора со значением, полученным процессором, если совпадают - процессор жив-здоров, нет - принимай меры.
Получается тоже довольно мудрёно и опять те же два лишних корпуса на плате со своей обвязкой. Кроме того, появляются проблемы с синхронизацией счётных процессов (впрочем вполне технически решабельные).

Как принято решать вышеописанную задачу? Как оценить степень работоспособности процессора?

Понимаю, что проблема стара как мир, но процесс гугления, к сожалению, ничего внятного не дал.

Заранее благодарен.
Д.

P.S. Никаких других контроллеров, АСУ ТП и вообще никаких цифровых (принимающих решения) устройств в схемотехнике не предусмотрено по экономическим причинам. Т.е. нужна как можно более простая следящая за здоровьем контроллера схема, выдающая сигнал типа TRUE/FALSE.
Реклама:
kudryvzev99 вне форума  
Сказали "Спасибо" kudryvzev99
warel (28.06.2019)
Непрочитано 29.07.2011, 10:55  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 918
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

Это называется watchdog. Просто сейчас они все внутренние. А вам нужен внешний. Можете хоть на резисторе и конденсаторе сделать. Заряжать конденсатор мегаомным резистором, а транзистором быстро разряжать. Если зарядится больше половины питания - триггер сработал, схема переключилась. Вот вам и простейший пес.
Easyrider83 вне форума  
Эти 2 пользователя(ей) сказали Спасибо Easyrider83 за это сообщение:
kudryvzev99 (29.07.2011), warel (28.06.2019)
Непрочитано 29.07.2011, 10:57  
MisterDi
Почётный гражданин KAZUS.RU
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,294
Сказал спасибо: 442
Сказали Спасибо 1,048 раз(а) в 706 сообщении(ях)
MisterDi на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

Классическая задача сторожевого таймера. На выводе процессора формируем импульсную последовательность, запускающую одновибратор. До тех пор, пока период выходных импульсов меньше времени работы одновибратора - на выходе одновибратора - 0 иначе - 1. Для надежности формирование сторожевых импульсов лучше всего выполнять в основном цикле в критичной по надежности секции. 2 дополнительные комманды большой задержки не внесут, но будет уверенность, что все работает. время работы одновибратора можно выбрать равным длительности 3-5 основных циклов, чтобы был запас по времени.
__________________
misterdi<@>i.ua
MisterDi вне форума  
Эти 2 пользователя(ей) сказали Спасибо MisterDi за это сообщение:
kudryvzev99 (29.07.2011), warel (28.06.2019)
Непрочитано 29.07.2011, 11:22  
Nfc
Прописка
 
Регистрация: 11.10.2008
Сообщений: 132
Сказал спасибо: 8
Сказали Спасибо 35 раз(а) в 30 сообщении(ях)
Nfc на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

Цитата:
1. Дёргать ногой одного из портов в основном цикле и интегрировать получившийся меандр. Если камень жив и в сознании, то интегральный результат должен быть больше нуля, но меньше питания.
Минусы такого подхода - метод косвенный, мудрёная аналоговая схемотехника с двухполярным питанием, (несколькими операционниками?), (аналоговым компаратором?), конденсаторами и резисторами. Кроме того, если в алгоритме придётся чего-нибудь менять, соответственно дописывая строчки кода, то период меандра изменится...Да и вообще не хочется переходить к аналоговой схемотехнике...
Не обязательно в основном цикле это делать, достаточно использовать один из таймером (или просто использовать уже задействованный) для генерации периода и по его прерыванию генерить меандр - нет зависимости от кода. Простейший аппаратный частотный компаратор реализуется посредством дифференцирующей цепочки и одновибратора - оч простая схема.
Можно и, наверно, рационально, так же использовать втроеный сторожевой таймер контроллера, например, который будет а)перезапускать контроллер в случае зависания, б)если в самое начало программы(там , где инициализация) добавить строчку дергаюшую ногу, которая будет сигнализировать внешним цепям о рестарте, соответствено получим это при зависании. Но тут нужно подумать, как разграничить случай включения устройства и случай его перезапуска от сторож таймера(я не помню, есть-ли в Мегах средства анализа причин сброса).
Nfc вне форума  
Эти 2 пользователя(ей) сказали Спасибо Nfc за это сообщение:
kudryvzev99 (29.07.2011), warel (28.06.2019)
Непрочитано 29.07.2011, 11:24  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

Сообщение от kudryvzev99 Посмотреть сообщение
Как оценить степень работоспособности камня? Сейчас в голову приходят только две идеи и обе пока не особо нравятся.
Пройдитесь поиском по форуму на предмет мессаг testerplus... Здесь уже это обсуждалось... И мессаг пользователя tester на микрочипсю...
Вкратце... кто как... программные методы, железячные, вплоть до установки второго проца... всё зависит от степени требуемой надёжности...
st_1 вне форума  
Эти 2 пользователя(ей) сказали Спасибо st_1 за это сообщение:
kudryvzev99 (29.07.2011), warel (28.06.2019)
Непрочитано 29.07.2011, 11:59  
_guardianangel
Почётный гражданин KAZUS.RU
 
Регистрация: 01.04.2009
Адрес: Рязань
Сообщений: 1,140
Сказал спасибо: 21
Сказали Спасибо 635 раз(а) в 344 сообщении(ях)
_guardianangel на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

Вочдог это конечно нужная штука, особенно при таких требованиях. Но вот представте такую ситуацию - выгорает порт управления ключем. Контроллер молотит себе, он в регистр битик ткнул, потом считал - вродь оно, а в реальности на порту сводка погоды на Марсе. Результат - полный макакай в рабочей зоне (макакай (кит.) - пи...ц по русски). Тут треба каждый ответственный пин проца контролировать другим пином. И орать если состояния не совпадут.
_guardianangel вне форума  
Эти 2 пользователя(ей) сказали Спасибо _guardianangel за это сообщение:
kudryvzev99 (29.07.2011), warel (28.06.2019)
Непрочитано 29.07.2011, 12:32  
st_1
Заблокирован
 
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
st_1 на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

Ну да... как-то так...
FLR10_seminar.pdf
st_1 вне форума  
Эти 4 пользователя(ей) сказали Спасибо st_1 за это сообщение:
kudryvzev99 (29.07.2011), rubel (31.07.2011), warel (28.06.2019), xaron (04.08.2011)
Непрочитано 29.07.2011, 13:00  
PlainUser
Прописка
 
Регистрация: 09.12.2003
Сообщений: 116
Сказал спасибо: 5
Сказали Спасибо 23 раз(а) в 19 сообщении(ях)
PlainUser на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

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

Из того что можно сделать самому и малой кровью.
1 ВНЕШНИЙ НИКАК НЕ ЗАВИСЯЩИЙ от проца вачдог.
2 Внешняя схема контороля аварийных состояний.

Работоспособность проца проверять смысла нет.
Как и ставит ловушки на неиспользуемые прерывания.
Но если по малолетству и скудости мастерства охота то пожалуйста ,
хуже не будет.
PlainUser вне форума  
Эти 2 пользователя(ей) сказали Спасибо PlainUser за это сообщение:
kudryvzev99 (29.07.2011), warel (28.06.2019)
Непрочитано 29.07.2011, 13:32  
ForcePoint
Почётный гражданин KAZUS.RU
 
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 6,801
Сказал спасибо: 2,913
Сказали Спасибо 3,123 раз(а) в 2,113 сообщении(ях)
ForcePoint на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

Сообщение от Nfc Посмотреть сообщение
Не обязательно в основном цикле это делать, достаточно использовать один из таймером (или просто использовать уже задействованный) для генерации периода и по его прерыванию генерить меандр - нет зависимости от кода.
И что? Случился по недосмотру или отсутствию сигнала от датчика вечный цикл, но прерывания-то продолжают идти и ничего не происходит из того, что должно произойти.
Не, прерывания - тупик.
ForcePoint вне форума  
Эти 2 пользователя(ей) сказали Спасибо ForcePoint за это сообщение:
kudryvzev99 (29.07.2011), warel (28.06.2019)
Непрочитано 29.07.2011, 13:46  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 918
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Тестирование работоспособности контроллера

Простейший пес делается на каком-нибудь чахлом PIC10. Важно, я думаю, только питание ему свое сделать. Чтоб помеха по питанию только один камень свешивала. А в идеале опторазвязку обеспечить.
Easyrider83 вне форума  
Эти 2 пользователя(ей) сказали Спасибо Easyrider83 за это сообщение:
kudryvzev99 (29.07.2011), warel (28.06.2019)
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Совет по выбору контроллера Gladkih Производственное оборудование 8 11.08.2010 08:26
Биты защиты прочитать программой контроллера Rubashka Микроконтроллеры, АЦП, память и т.д 14 18.05.2010 15:13
Замена контроллера Da_shu_tka Микроконтроллеры, АЦП, память и т.д 12 05.02.2009 11:06


Часовой пояс GMT +4, время: 16:01.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot