EEPROM ATmega. Стойкость к помехам.

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
dr.doc
Это не хвост, это антенна
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

EEPROM ATmega. Стойкость к помехам.

Сообщение dr.doc »

Имеется пара десятков приборов на основе ATmega8a, установленных в мощном оборудовании (тиристорные регуляторы, стабилизаторы сетевого напряжения). В некоторых из них имеется следующая проблема - затираются ячейки EEPROM, причем не понятно, это результат работы аппаратной части (затирается 1-2 ячейки произвольным числом и в произвольном порядке), "запущенной" от помехи (стечение обстоятельств) или "прыжок" на участок записи в EEPROM.
Как правило, контроллер при этом зависает.
Собственно вопрос: как определить, что является причиной? Если программный сбой - можно сделать блоковую запись с CRC суммой и отправлять на запись блок, только если CRC правильная. Но как быть, если сбоит именно с "прыжком" на участок записи байта?
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
Реклама
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение uk8amk »

1. Исключить или уменьшить влияние помех на мозг. Гальваническая развязка, экранирование, правильная печатная плата и проч.
2. Проверить BODEN или внешний супервизор питания.
3. Watchdog как внутренний, так и внешний.
4. В памяти несколько копий настроек. При включении анализ CRC, целостности блоков и их коррекция/восстановление.
5. Внешний чип памяти. Глюкнувшему процессору его намного сложнее запороть.
Реклама
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение Z_h_e »

dr.doc писал(а):как определить, что является причиной?
Попробуйте проблемный прибор запустить в тепличных условиях. Убрать нагрузку и прочее и погонять.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
dr.doc
Это не хвост, это антенна
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение dr.doc »

При отладке встречались ситуации, когда стиралась память программ, точнее - портилась. После доработок ПП влияние помех снизилось максимально. Без watchdog зависаний в работе устройства не обнаруживается. А вот настройки... Увы.
PS вход в режим программирования возможен только после удержания в течении 5-ти секунд кнопки. Возможное исключение - непреднамеренный прыжок на "нужный" адрес. Только против этого говорит то, что затирание памяти происходит именно при мощной помехе - переключение обмотки автотрансформатора (релейная коммутация), либо старт автомобиля на пускозарядном устройстве.
Да, забыл указать, что эта проблема имеется в 2-х разных типах приборов с разными прошивками. Одинаковой является только подпрограмма записи EEPROM:
СпойлерRead_init_EEP:
ldi ZL,Low(RKp) ; Адрес младшего байта оперативки
ldi ZH,High(RKp)
; EEPROM_Read:
; R17,r16 - adress, r18 - data
ldi r17,0 ; Адрес в EEPROM первого считываемого байта
ldi r16,1
ldi r19,8 ; Число считываемых в оперативку байт
RD_EEP:
rcall EEPROM_Read
st Z,r18
inc ZL ; Увеличили адрес косвенной адресации
brne _2_
inc ZH
_2_:
inc r16
dec r19
brne RD_EEP
ret


EEP_WR_C:
; Перед записью прочитаем, и в случае равенства не пишем
; EEPROM_Read:
; r17,r16 - adress, r18 - data

rcall EEPROM_Read
cp r20,r18
brne Write_EEP_Const1
ret

Write_EEP_Const1:
mov r18,r20
rcall EEPROM_write2
ret





EEPROM_Read:
; R17,r16 - adress, r18 - data
cli ; Wait for completion of previous write
SBIC EECR,EEWE
rjmp EEPROM_read
; Set up address (r17,r18) in address register
out EEARH, r17
out EEARL, r16
; Start eeprom read by writing EERE
sbi EECR,EERE
; Read data from data register
in r18,EEDR ; DATA - r18
sei ; Enable global interrupt
ret


EEPROM_write2:
cli
; R17,r16 - adress, r18 - data
sbic EECR,EEWE
rjmp EEPROM_write2
; Set up address (r17:r16) in address register
out EEARH, r17
out EEARL, r16
; Write data (r18) to data register
out EEDR,r18
; Write logical one to EEMWE
sbi EECR,EEMWE
; Start eeprom write by setting EEWE
sbi EECR,EEWE
sei
ret



Write_EEP_Const2:
cli
ldi ZL,Low(RKp) ; Адрес младшего байта блока оперативки
ldi ZH,High(RKp)
; EEPROM_write2
; R17,r16 - adress, r18 - data
ldi r17,0 ; Адрес в EEPROM первого записываемого байта
ldi r16,1
ldi r19,9
WR_EEP2:
ld r18,Z
rcall EEPROM_write2
inc ZL
brne _4_
inc ZH
_4_:
inc r16 ; Адрес в EEPROM
dec r19 ; Перебираем все байты
brne WR_EEP2
sei
ret
Я же пишу: при отсутствии помех работает без проблем. Одно из устройств - амперметр с калибровкой измеряемого значения. Так вот настройки сбиваются именно на пускозарядном в момент запуска (перегрузка трансформатора).
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение Z_h_e »

Приходилось сталкиваться с проблемами наведения помех на линии управления, например на линию оптопары со стороны светодиода. Эта помеха уходит в порт и в питание МК через его защитные диоды.

Может помочь [url=data:image/png;base64,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]подобная[/url] схема. Только я бы еще стабилитрон добавил и диоды шотки лучше использовать и еще сопротивление между диодами и портом поставил.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Реклама
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение uk8amk »

Схема входа китайской ЧПУ системы. Работает в жутких помеховых условиях.
После доработок ПП влияние помех снизилось максимально.
...
Так вот настройки сбиваются именно на пускозарядном в момент запуска
Значит помехи не ушли совсем. Вот в чём причина. В данном случае следует бороться не с программой.
Перерабатываейте плату, экранируйте, заземляйте, разносите блоки и провода в пространстве.
Вложения
xpthc.PNG
(50.84 КБ) 414 скачиваний
Реклама
Аватара пользователя
dr.doc
Это не хвост, это антенна
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение dr.doc »

Как экранировать вход амперметра? Или гальванически его отвязать...
На входах АЦП стоят развязывающие усилители на ОУ, по питанию (см фото) конденсаторы, под корпусом полигон, на кварц - отдельная земля от полигона, подвод земли с противоположной стороны.
В начале тестов пробовали экранировать оцинковкой 0.5 мм, не помогло. Хорошо помог кондер по питанию на фото.
Вложения
Плата.gif
(131.15 КБ) 692 скачивания
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение oleg110592 »

можно попробовать программно побороться - после записи или чтения EEPROM сделать EEARH=0 EEARL=0 и не использовать ячейку EEPROM по 0 адресу. Контрольная сумма простенькая не помешает, у японца Чена так работа с EEPROM сделана:
Спойлер

Код: Выделить всё

; Load/Save EEPROM

load_eep:
	ldiw	Y, Comp1	;Load compensation data
	ldiw	C, 0x5501	;
	 rcall	read_eep	;
	st	Y+, AL		;
	add	CH, AL		;
	cpi	YL, Comp1+4	;
	brne	PC-4		;/
	 rcall	read_eep	;Check SUM
	cp	AL, CH		;
	breq	PC+6		;/
	sti	-Y, -1		;Set default value if data have been broken.
	st	-Y, AL		;
	st	-Y, AL		;
	st	-Y, AL		;/
	ret


save_eep:
	ldiw	Y, Comp1	;Save compensation data
	ldiw	C, 0x5501	;
	ld	AL, Y+		;
	add	CH, AL		;
	 rcall	write_eep	;
	cpi	YL, Comp1+4	;
	brne	PC-4		;/
	mov	AL, CH		;Save check SUM

write_eep:
	out	EEAR, CL
	inc	CL
	out	EEDR, AL
	cli
	sbi	EECR, EEMWE
	sbi	EECR, EEWE
	sei
	sbic	EECR, EEWE
	rjmp	PC-1
	ret

read_eep:
	out	EEAR, CL
	inc	CL
	sbi	EECR, EERE
	in	AL, EEDR
	ret
отсюда: http://elm-chan.org/works/cmc/report.html
еще можно метод "метод мажоритарного резервирования":
http://chipenable.ru/index.php/programm ... blemi.html
Аватара пользователя
Z_h_e
Собутыльник Кота
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение Z_h_e »

oleg110592 писал(а):можно попробовать программно побороться
Помехи, приводящие к сбою МК, программно не побороть.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение oleg110592 »

[uquote="Z_h_e",url="/forum/viewtopic.php?p=3153405#p3153405"]Помехи, приводящие к сбою МК[/uquote]
так разговор не про сбои, в начале (имхо) это бы победить:
Без watchdog зависаний в работе устройства не обнаруживается. А вот настройки... Увы.
В некоторых из них имеется следующая проблема - затираются ячейки EEPROM
Аватара пользователя
dr.doc
Это не хвост, это антенна
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение dr.doc »

Главная проблема заключается как раз в том, что я достоверно не знаю причины - баг это или аппаратная проблема. Я имею факт того, что не систематически, случайным образом проявляется изменение в записанных ранее значениях энергонезависимой памяти.
До установки керамического конденсатора возле выводов питания МК затиралась также и флешь память: Так, при запуске автомобиля при помощи пускозарядного устройства МК, единожды "зависнув", после подачи питания продолжил некорректно работать. Сравнение залитой прошивки и исходника выявляет несоответствие, причем как во флешь памяти, так и в EEPROM. Затирались, как правило, 1-3 байта.
Побороть это явление удалось напайкой керамического конденсатора на 0,1 мкФ прямо на выводы МК. После этого были переработаны ПП и проблема со слетом прошивки полностью (год с копейками эксплуатации нескольких десятков экземпляров) ушла. Осталась только проблема с EEPROM.
Про ячейку с нулевым адресом я читал и ее не использую.
Имеет ли смысл ставить конденсатор на вывод reset, как это рекомендует Microchip для своих контроллеров?
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение uk8amk »

Как экранировать вход амперметра? Или гальванически его отвязать...
Аналоговый оптрон, изолированный усилитель, трансформатор тока, ПНЧ, внешний чип АЦП, изолированный датчик тока и т.д.
Хорошо помог кондер по питанию на фото.
Этот кусочек не передаёт всей красоты или корявости платы.
До установки керамического конденсатора возле выводов питания МК затиралась также и флешь память:
Не допускаете ли вы пролезания иголок через стаб по линии питания МК?
mrFox
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Пт сен 21, 2007 17:53:23
Откуда: Зарайск

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение mrFox »

[uquote="dr.doc",url="/forum/viewtopic.php?p=3153500#p3153500"]...Побороть это явление удалось напайкой керамического конденсатора на 0,1 мкФ прямо на выводы МК. ...[/uquote]
Самое вероятное - неправильно разведенно питание
- на все питающие цепи МК должно быть по кондесатору
- питающая шина должна проходить через вывод кодесатора, далее на вывод МК
- участок шины от кодесатора должен быть как можно короче
- правильная разводка земли - единый полигон под МК
- информационные входы МК развязать резисторами - это миниум
- забудте про однослойную млату - миниум 2 слоя
Аватара пользователя
dr.doc
Это не хвост, это антенна
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение dr.doc »

Печатная плата амперметра. Структура питания следующая: силовой трансформатор, выпрямитель/стабилизатор 2*15В для питания регулятора, а уже со стабилизатора +15В взято питание на данную плату.
Вложения
Плата амперметра.gif
(50.72 КБ) 472 скачивания
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25219
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение КРАМ »

Это форменное безобразие, а не печатная плата промоборудования. Такое УСЛОВНО сойдет только для какой нибудь макетки на столе разработчика. да и то если он ленив.
1. Плату нужно делать ДВУХСТОРОННЕЙ, где вторая сторона - сплошной полигон земли.
2. Дроссель в цепи питания уменьшает пульсации входящего питания, но является идеальным приемником помех в виде переменного магнитного поля. От последнего не спасают никакие электростатические экраны, а магнитные экраны должны выполняться в определенной ориентации к сердечнику дросселя. Такшта замените дроссель на резистор равного импеданса на частоте входных пульсаций, либо уберите его совсем.
3. Сказать что либо по схемотехнике входов/выходов устройства без приведения Вами схемы электрической принципиальной этого устройства не могу. Хотя и там, есть смутное подозрение, косяков достаточно.
Аватара пользователя
dr.doc
Это не хвост, это антенна
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение dr.doc »

На входах стоят усилители на основе LM358. Измеряемый сигнал берется от сигнала ООС с основной платы регулятора. Диапазон входных значений напряжения от минус 12 до +12 вольт. В зависимости от схемотехники запаиваются резисторы либо для инвертирующего усилителя, либо неинвертирующего. Поэтому в обвязке ОУ столько деталей. Между ОУ и МК установлены резисторы номиналом 4,7кОм. Сам ОУ питается напряжением от +5 и -3-3,5 вольта, получаемым при помощи МК от инвертирующего выпрямителя, на который подается меандр.
Вложения
Входные цепи.gif
(22.67 КБ) 341 скачивание
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25219
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение КРАМ »

Я с трудом воспринимаю вербальное описание самой схемы и схемы включения устройства в оборудование.
Приведенного участка явно недостаточно.
Проблема (одна из возможных) обычно кроется в перекосе общих проводников самого прибора и его входных сигналов. Что может привести к протеканию значительных токов по паразитным диодам КМОП структур МК, а так же неконтролируемым выбросам в цепях питания устройства как раз из за протекания этих токов.
Аватара пользователя
dr.doc
Это не хвост, это антенна
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение dr.doc »

Про землю я в курсе. Земляной проводник приведенной платы подключается к общему выводу стабилизатора питания на плате регулятора пускозарядного устройства. Из возможных помех там могут быть токи на включение тиристоров, протекающие по земляному проводу, но почему в режиме заряда (работа СИФУ) все нормально, а при старте (контролируется напряжение бортовой сети авто и, как только оно упало до 10 вольт, тиристоры открываются на максимально возможный угол. При этом изменяется только электромагнитная обстановка внутри корпуса.
И почему слетает именно EEPROM? Когда слетала память программ - тогда было ясно, что это от помехи по питанию. Победилось же установкой керамики возле выводов питания МК. А про дроссель типа EC24 - да, признаюсь, не подумал. Обычная антенна на гантельке. Доберусь до прибора сразу заменю на колечко, они наименее подвержены внешним электромагнитным полям.
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение uk8amk »

стабилизатор 2*15В для питания регулятора, а уже со стабилизатора +15В взято питание на данную плату.
Попробуйте взять питание от другого источника. Например, поставить рядом ещё один трансформатор.

По самой плате. Примерно так должен выглядеть ваш показометр
Изображение Изображение
И почему слетает именно EEPROM?
Еепром слетает потому же. Просто она более нежная чем флеш.
Аватара пользователя
dr.doc
Это не хвост, это антенна
Сообщения: 1368
Зарегистрирован: Вс мар 28, 2010 12:52:22
Откуда: Беларусь

Re: EEPROM ATmega. Стойкость к помехам.

Сообщение dr.doc »

Хорошо, но у меня сторона дорожек будет обращена к силовым цепям, создающим помеху, т.к. металлизировать отверстия в домашних условиях нет возможности и индикатор не получится развернуть, а полигоны земли дадут только дополнительную паразитную емкость для схемы измерителя.
«Еще я хотел бы, чтобы наши ученые изобрели какой-то новый источник энергии, чтобы мы на коленях не ползали даже перед нашими братьями, умоляя их и выпрашивая тонну нефти или кубометр газа», — рассказал белорусский президент.
Ответить

Вернуться в «AVR»