Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.81/63: Рейтинг темы: голосов - 63, средняя оценка - 4.81
Tympym
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 19
1

Отключение выходов.

24.03.2012, 12:21. Просмотров 11283. Ответов 30
Метки нет (Все метки)

Привет. Я с микроконтроллерами знаком не долго, месяц – два. Сложилась ситуация, и мне пришлось накатать прогу для системы управления лифтом (походы пришлось знакомиться с мк), вернее несколько прог (центральная плата Atmega16 + Atmega8, пост приказ Atmega16 и наружные вызовы – по Atmega8) условие работы у них жестки, помех много и для коммуникации RS485 – от ШИМа инвертора и на входы для энкодера, сильно воздействуют и реле (включение фаз движка). Более менее справились сними, но возникли две проблемы –
1 отключаются выходы портов.(висят оптроны) – помогает ресюк…
2 нарушаются данные в EEPROM’e (различные параметры и даные энкодера для этажа)- пришлось создать три копии и периодически при старте лифта сравнивать каждую копию с другими двумя и соответственно при не соответствии одной – перезаписывает её… но это не дело… так как порой битые оказываются две копии ...хотелось бы знать причину…спасибо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2012, 12:21
Ответы с готовыми решениями:

Двоичный дешифратор 3 входа,8 выходов
.include "m16def.inc" .def temp = r18; ser r18 out DDRB,R18 START: IN...

Сколько максимально может быть выходов у ATMEGA8? (I2C, SPI)
Такой глупый вопрос: Знаю про микросхемы для увеличения количества...

Удаленное отключение электроприборов (Raspberry Pi B+)
Помогите решить проблему, нужно написать программу и настроить малину на...

Отключение выгрузки регистров в стек (CVAVR)
Камень: atmega88pa Компилятор: CVAVR Главная часть проекта - 8-канальный...

Отключение зарядки для Li-ion аккумуляторов.
Появилась идея, сделать фонарик с кое какой логикой работы. Если с логикой...

30
stt
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 9
24.03.2012, 14:06 2
По всем пунктам, особенно по п.1- подробнее бы: в каком случае отключаются? После чего? Текст программы?
По п.2. БОД включен? Как и когда происходит запись в ЕЕПРОМ?
0
Stotym_UssR
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 3,180
24.03.2012, 14:36 3
ужасно, знаком 1-2 месяца, а уже делает системы управления лифтом)))))) Скажите хотя бы, что за марка лифтов, чтобы я на них не ездил...
0
DY HOTT
0 / 0 / 0
Регистрация: 22.01.2010
Сообщений: 4,000
24.03.2012, 14:55 4
Лучше бы поставили PLC и надежней бы в итоге было. А так вы с ней еще пол года проебетесь.
0
drvtos
1 / 1 / 0
Регистрация: 25.05.2010
Сообщений: 3,610
24.03.2012, 15:04 5
Цитата Сообщение от DY HOTT
Лучше бы поставили PLC
Собсно, других вариантов я вообще не понимаю в таком деле. Поэтому даже рассказывать, что может быть со сбоем ЭППЗУ - не очень хочется. Хотя недавно с таким боролся. Питание, его надежность и время выхода на режим, полюс правильная система сброса - вот возможный рецепт. Ну, и чисто программные ошибки не исключены, как бы это тебе не казалось удивительным и невозможным.
0
hixFF
0 / 0 / 0
Регистрация: 30.01.2010
Сообщений: 641
24.03.2012, 18:19 6
кхм. марка лифта и город?
0
o9d
0 / 0 / 0
Регистрация: 10.08.2010
Сообщений: 1,264
24.03.2012, 18:26 7
Та это походу диплом. Так, что нечего бояться.

Для успешной записи данных в память нужна ставить резервное питание. Т.е. основное пропало, записываем все данные и выключаемся.
Для определения какая копия верная используют не тупое сравнение а CRC8/CRC16/CRC32.
0
Tympym
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 19
24.03.2012, 19:24 8
>>По всем пунктам, особенно по п.1- подробнее бы: в каком случае отключаются? После чего? Текст программы?
>>По п.2. БОД включен? Как и когда происходит запись в ЕЕПРОМ?
1 После чего... если бы знал.....
2 да включен, на 4В запись происходит только раз при первом включении... лифт запускается на ТестРан - мы так это назвали... при первом включении лифт проходит на третьей скорости все этажи, считывает показание геркона и энкодера записывает в епром, после по этим показанием и определяет свое место положение...

Текст могу скинуть… все 16 кб забиты…
0
Tympym
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 19
24.03.2012, 19:35 9
Цитата Сообщение от o9d
Та это походу диплом. Так, что нечего бояться.

Для успешной записи данных в память нужна ставить резервное питание. Т.е. основное пропало, записываем все данные и выключаемся.
Для определения какая копия верная используют не тупое сравнение а CRC8/CRC16/CRC32.
1 - мне казалось бодена на 4 в будет достаточно... атмеги А...
2 - в даном варианте крк не эффективна... делаю тупое сравнение.... крк ток на коммуникации....протокол сам зафигачил - за основу взял принцип модбаса...
0
Tympym
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 19
24.03.2012, 19:37 10
Цитата Сообщение от DY HOTT
Лучше бы поставили PLC и надежней бы в итоге было. А так вы с ней еще пол года проебетесь.
PLC - в частности Ditto - не дают той гибкости... ставили-знаем....
0
o9d
0 / 0 / 0
Регистрация: 10.08.2010
Сообщений: 1,264
24.03.2012, 19:59 11
CRC не эффективно? Это еще почему? И чем определения целостности данных в памяти отличается от проверки целостности данных пришедших из сети?

1 - мне казалось бодена на 4 в будет достаточно... атмеги А...
Бод вырубает питание а не гарантирует завершение записи.

Надо полагать это не диплом. А как фирма называется и в каком городе лифты используются?
0
Stotym_UssR
0 / 0 / 0
Регистрация: 08.08.2010
Сообщений: 3,180
24.03.2012, 20:09 12
Цитата Сообщение от o9d
Бод вырубает питание а не гарантирует завершение записи.
Бод делает ресет
0
o9d
0 / 0 / 0
Регистрация: 10.08.2010
Сообщений: 1,264
24.03.2012, 20:15 13
Да, он вводит в ресет. И если наблюдаются скачки в питании, то работа микроконтроллера может стать непредсказуемой.
0
drvtos
1 / 1 / 0
Регистрация: 25.05.2010
Сообщений: 3,610
24.03.2012, 20:30 14
Цитата Сообщение от Tympym
PLC - в частности Ditto - не дают той гибкости... ставили-знаем....
Не любите ПЛК? Вы просто не умеете их готовить :)
Что такое гибкость? Писать самодельные протоколы? Мазохизм, это если действительно диплом. Или головотяпство, если вы думаете оставить в работе такую самопальщину.

Кстати, все вопросы о реальности работы автор тупо игнорирует.
0
Tympym
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 19
24.03.2012, 20:37 15
[QUOTE="o9d"]CRC не эффективно? Это еще почему? И чем определения целостности данных в памяти отличается от проверки целостности данных пришедших из сети?

[QUOTE="Цитата:[/QUOTE]
1 - мне казалось бодена на 4 в будет достаточно... атмеги А...
Бод вырубает питание а не гарантирует завершение записи.

Надо полагать это не диплом. А как фирма называется и в каком городе лифты используются?

00 ff 00
ff 00 00
результат один...

>> Бод вырубает питание а не гарантирует завершение записи.
дело в том что запись происходит при первом включении под присмотром наладчиков... в дальнейшем только чтение... прога может работать неделю - месяц и пипец...
по сети как правило мониторинг... плюс приказы этажей и открытие закрытие дверей ну и пару мелочей - валидность которых можно проверить ....
0
Tympym
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 19
24.03.2012, 20:47 16
Цитата Сообщение от drvtos
Цитата Сообщение от Tympym
PLC - в частности Ditto - не дают той гибкости... ставили-знаем....
Не любите ПЛК? Вы просто не умеете их готовить :)
Что такое гибкость? Писать самодельные протоколы? Мазохизм, это если действительно диплом. Или головотяпство, если вы думаете оставить в работе такую самопальщину.

Кстати, все вопросы о реальности работы автор тупо игнорирует.

какие вопросы?
Использовать ПЛК в данном вопросе не перспективно.... на каждый этаж ставить по плк иль на каждую этажную кнопку проводить по 3-4 провода с машинного отделения? для 18 этажки сколько провода потребуется? плата же обходиться в пределах 5-10$ и в отличии от просто кнопки со светодиодом наш "хайтек" может дополнительно сообщить центральной плате о месте разрыва цепи ркд, "сообщать" клиенту где лифт и куда он направляется... попробуйте на плк за 500$ реализовать такое... да я не любитель плк - это примитивно ....

На форум не получается файл скинуть… http://files.mail.ru/1CZ1IP
0
o9d
0 / 0 / 0
Регистрация: 10.08.2010
Сообщений: 1,264
24.03.2012, 21:02 17
00 ff 00
ff 00 00
результат один...
Только что проверил. CRC разное. Какой алгоритм дает совпадение CRC ?

дело в том что запись происходит при первом включении под присмотром наладчиков... в дальнейшем только чтение... прога может работать неделю - месяц и пипец...
по сети как правило мониторинг... плюс приказы этажей и открытие закрытие дверей ну и пару мелочей - валидность которых можно проверить ....
Из-за некачественного питания у МК срывает голову. Ставь резервное питание. Делается очень тупо.
В качестве элемента питания береш электролит или что-то понодежней. Разделяешь питание МК и основное диодом шотки. На основное питание подводишь пин с прерыванием PCINT или INT.
0
tyzord66
0 / 0 / 0
Регистрация: 14.10.2011
Сообщений: 806
24.03.2012, 21:09 18
Цитата Сообщение от o9d
Бод вырубает питание а не гарантирует завершение записи.
BOD держит ресет пока питание ниже установленного и не дает основной программе выложить следующие данные на запись. Автомат, тем временем, продолжает запись поступивших до этого момента данных, IMHO. Если бы BOD прерывал запись, то от него было бы мало выхлопа. Может стоит заэкранировать МК?
0
o9d
0 / 0 / 0
Регистрация: 10.08.2010
Сообщений: 1,264
24.03.2012, 21:16 19
2tyzord66 уже написали чуть выше.

БОД не спасет от скачков напряжения.
Вместо того чтоб лечить симптомы или последствия болезни, нужно лечить саму болезнь. А это некачественное питание.
0
Tympym
0 / 0 / 0
Регистрация: 21.03.2012
Сообщений: 19
24.03.2012, 21:32 20
[QUOTE="o9d"][QUOTE="Цитата:[/QUOTE]
00 ff 00
ff 00 00
результат один...
Только что проверил. CRC разное. Какой алгоритм дает совпадение CRC ?

дело в том что запись происходит при первом включении под присмотром наладчиков... в дальнейшем только чтение... прога может работать неделю - месяц и пипец...
по сети как правило мониторинг... плюс приказы этажей и открытие закрытие дверей ну и пару мелочей - валидность которых можно проверить ....
Из-за некачественного питания у МК срывает голову. Ставь резервное питание. Делается очень тупо.
В качестве элемента питания береш электролит или что-то понодежней. Разделяешь питание МК и основное диодом шотки. На основное питание подводишь пин с прерыванием PCINT или INT.

Пользуемся AVRStudyo? К примеру достаньте прошивку с меги… будет hex файлик…. Попробуйте изменить байтик в строке… при прошивке выдаст сообщение о плохом hex файле…
После попробуйте с одного байтика убрать единицу, а в другом байтике этой же строчки добавьте единицу… и студио прошьет прекрасно атмегу….

X=01h+03h+04h+01h+00h+01h=0Ah
CRC=-(X)=F6h
0
24.03.2012, 21:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.03.2012, 21:32

Отключение/включение PCINT (решено. Дребезг мешал)
Экспериментирую с прерываниями с помощью кнопок на 328p PINB. Кнопки подключены...

Программное отключение звуковых входов/выходов
Какой программой можно отключить определенные звуковые входы/выходы? К...

Перенаправление выходов
Здравствуйте! У меня в ноутбуке звуковая карта Realtech HD Audio. Есть три...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru