Смысл вот в чем - один МК посылает в линию импульсы - от одного до 16-ти. длительность импульса 0,25 сек(можно увеличить до 0,5сек). другой МК это дело подсчитывает и принимает решение - зажигает один из диодов. оба МК - тиньки 2313. прога уже имеется, отлажена в протеусе и на макетках. сначала в развязку ставил КТ315 - тестил на расстоянии ~ 1м работает на ура!!! КТ включал по схеме с ОЭ без обвеса, просто припаял. минут через 30-40 начались сбои в индикации... вот у меня с стал вопрос - может развязать через что-нить, ибо работать ему долгие месяцы в режиме ожидания. Это типа сигнализация такая будет.alexey6522 писал(а):если вы хотите, что бы вам кто-то помог, опишите для начало что за МК, что за устройства хотите сделать, может уже есть в продаже готовые решения
Мелкие вопросы по МК и ПЛИС.
- Сообщения: 209
- Зарегистрирован: Ср ноя 03, 2010 14:46:17
Лень - двигатель прогресса!
- Реклама
Я бы посоветовал Вам все же не пожалеть времени и все переделать особенно, если хотите иметь длинную стабильно работающую линию связи.Челюскин писал(а):Смысл вот в чем - один МК посылает в линию импульсы - от одного до 16-ти. длительность импульса 0,25 сек(можно увеличить до 0,5сек). другой МК это дело подсчитывает и принимает решение - зажигает один из диодов
Уточните, какой Вам нужен канал связи - симплекс или полудуплекс?
Я бы сделал так: контроллеры общаются друг с другом через порты USART с преобразователями интерфейса TTL->RS-485 и обратно. Интерфейс RS-485 как раз двухпроводный (к слову, бывает и 4-х проводный RS-485, но это уже экзотика) и по спецификации допускает расстояние между устройствами до 4000 футов (1,2 км).
Можно еще и протокол обмена реализовать с защитой пакетов посредством добавления CRC. А уж через свободные выводы удаленный контроллер пусть рулит светодиодами.
В принципе, схему канала связи могу нарисовать, если Вас заинтересовало...
точно есть.alexey6522 писал(а):Так как не могу решить свою проблему другими способами "не думаю что их нет, я о них просто не знаю",
отправьте пустоту на ваш индикатор
отправьте восемь на ваш индикатор.
проверьте отдельно от других индикаторов этот.
в протеусе многое работает даже то,что не должно в нормальной схеме работать.alexey6522 писал(а): Прошу проверить правильность соединения, в протеусе вроде раб. нормально
В поисках истины человек развивается.
- Сообщения: 209
- Зарегистрирован: Ср ноя 03, 2010 14:46:17
Alkul спасибо, правда мой уровень общения с МК пока не таков, но о направлении развития я серьёзно подумаю.
в протеусе все нормально. Проверил на макетных платах, как писал выше - все работает! через полчаса - проблемы начинаются. посоветуйте оптопару какую-нить, чтобы без особых заморочек работала с МК. схему набросал по-быстрому. без питания и не все диоды нарисовал, думаю идея понятна.
в протеусе все нормально. Проверил на макетных платах, как писал выше - все работает! через полчаса - проблемы начинаются. посоветуйте оптопару какую-нить, чтобы без особых заморочек работала с МК. схему набросал по-быстрому. без питания и не все диоды нарисовал, думаю идея понятна.
- Вложения
-
- CHEMA.JPG
- (82.1 КБ) 316 скачиваний
Лень - двигатель прогресса!
Вот выше Вам про протеус совершенно правильно сказалиЧелюскин писал(а):в протеусе все нормально. Проверил на макетных платах, как писал выше - все работает! через полчаса - проблемы начинаются. посоветуйте оптопару какую-нить, чтобы без особых заморочек работала с МК.
А Ваша схема, к сожалению, работать не будет. Вернее, "на столе" какое-то время поработает. Стоит же увеличить расстояние хотя бы на несколько метров, у Вас начнутся проблемы.
Ваш удаленный контроллер считает поступившие импульсы? А теперь представьте, что будет, если на соединительный кабель навелся один импульс помехи и был сосчитан Вашим удаленным контроллером, как реальный? Да у Вас весь обмен сдвинется и коды уже совершенно другие будут! А Ваш "канал связи" полностью беззащитен против помех.
Протеусу на все это плевать с высокой колокольни, у него-то никаких помех нет, поэтому в симуляции все работает.
Послушайте "старого опытного человека"
И опторазвязки Вам не помогут - что будете делать с синфазными помехами? С "завалом фронтов" из-за паразитной емкости соединительного кабеля? Если не RS-485, тогда только кодирование в Манчестер-II поможет защитить Ваш канал. Но драйверы RS-485 проще и дешевле, чем схемы кодирования и (особенно) декодирования манчестерского кода.
Последний раз редактировалось Alkul Вт май 22, 2012 21:57:02, всего редактировалось 1 раз.
- Реклама
- Сообщения: 209
- Зарегистрирован: Ср ноя 03, 2010 14:46:17
Если можно, ткните тогда носом в ЭТО ВСЕ. помню читал когда-то про Манчестерский код у Б. Скляра в "Цифровой Связи" - жесть дело!!! или может у кого наработки уже есть на RS-485 на асьме?Alkul писал(а):Если не RS-485, тогда только кодирование в Манчестер-II поможет защитить Ваш канал.
Лень - двигатель прогресса!
Да у меня естьЧелюскин писал(а):или может у кого наработки уже есть на RS-485 на асьме?
Если хотите, схему нарисую, исходники на асме дам, ничего сложного там нет.
Но все завтра, сейчас мне пора спать
- Сообщения: 209
- Зарегистрирован: Ср ноя 03, 2010 14:46:17
С удовольствиемAlkul писал(а):Если хотите, схему нарисую, исходники на асме дам, ничего сложного там нет.
Лень - двигатель прогресса!
Alkul .да ну вполне работоспособная схема.
только протокол неизвестен.как вы думаете ваш RS-485 реализован?
Челюскин
может обычная рассинхронизация сигналов портит вам жизнь.пробовали с более коротким кабелем?если проблема остается,то нужно смотреть в сторону протокола.
если два устройства работают от одной частоты внутреннего генератора то не факт что такты(частота) всегда будут совпадать.
через полчаса ошибка накапливается,а коррекция не производится.
только протокол неизвестен.как вы думаете ваш RS-485 реализован?
Челюскин
может обычная рассинхронизация сигналов портит вам жизнь.пробовали с более коротким кабелем?если проблема остается,то нужно смотреть в сторону протокола.
если два устройства работают от одной частоты внутреннего генератора то не факт что такты(частота) всегда будут совпадать.
через полчаса ошибка накапливается,а коррекция не производится.
В поисках истины человек развивается.
- Сообщения: 209
- Зарегистрирован: Ср ноя 03, 2010 14:46:17
я думал об этом, ввел синхронизацию, простую правда. На схеме 15 датчиков - 7 нормальноразомкнутые, 8 норм.замкнутые, МК генерирует импульсы от 1 до 15. в конце всегда идет 16 импульсов для сброса всех регистров принимающего МК, типа синхросигнала.vitalik_1984 писал(а):Alkul .
может обычная рассинхронизация сигналов портит вам жизнь.пробовали с более коротким кабелем?если проблема остается,то нужно смотреть в сторону протокола.
если два устройства работают от одной частоты внутреннего генератора то не факт что такты(частота) всегда будут совпадать.
через полчаса ошибка накапливается,а коррекция не производится.
Лень - двигатель прогресса!
Ну, ничего себе! А как насчет того, что физический уровень RS-485 - дифференциальная пара? Которая изначально нечувствительна к синфазным помехам?vitalik_1984 писал(а):Alkul .да ну вполне работоспособная схема.
только протокол неизвестен.как вы думаете ваш RS-485 реализован?
Приведенная схема - это просто провод, на который будет наводиться все, что угодно.
Челюскин, уточните, Вам нужен симплексный канал? То есть, такой, в котором информация передается всегда в одном направлении?
А также уточните, чем именно и каким способом нужно управлять? Какие оконечные устройства (светодиоды, сухие контакты и т.д.) есть у удаленного МК?
P.S. Набросал схему симплексного канала связи. Информация всегда передается от ведущего устройства к ведомому.
Микросхема ADM1485 в Екатеринбурге стоит 40 рублей. Но эту микросхему я взял для примера, аналогичные драйверы есть у многих производителей электронных компонентов. Ответьте на вопрос выше, подумаю, как построить протокол обмена.
P.P.S. Имейте в виду, что данный канал не обеспечивает гальванической развязки устройств. Если она нужна, посмотрите на драйвер ADM2484EBRWZ. Ему, правда, требуется два раздельных питания, но зато канал получается гальванически развязанным.
- Вложения
-
- схема.jpg
- (101.19 КБ) 346 скачиваний
я не говорю,что они идентичны,я имел ввиду что сходство все равно есть.и если дополнить оптимальным резистором в соответствии с длиной провода то схема вполне может жить.Ну, ничего себе! А как насчет того, что физический уровень RS-485 - дифференциальная пара?
мало того я даже видел устройства на таком принципе.
только транзистор должен стоять на передающей стороне.
минус -нет развязки.
и еще говорю, что протокол важен.
даже если есть помехи,ничто не должно испортить сигнал.
В поисках истины человек развивается.
сходство только в том, что обе схемы являются интерфейсами связи. Если из этого критерия исходить, то абсолютно все интерфейсы похожи друг на друга.vitalik_1984 писал(а):я не говорю,что они идентичны,я имел ввиду что сходство все равно есть.
Может, конечно. В пределах лабораторного стола, и то, по словам Челюскина, недолго - минут 30-40.vitalik_1984 писал(а):и если дополнить выбрать оптимальный резистор в соответствии с длиной провода то схема вполне может жить.
Вы не понимаете до конца, что-ли, разницу между дифференциальной парой и обычным проводом с сигналом в формате TTL?
У дифференциальной пары состояние лог.нуля передается путем подтягивания одной линии (А) к "нулю", а другой (В) - к "единице". А состояние лог.1 передается, наоборот, подтягиванием линии А к "единице", линии В - к "нулю". То есть, если помеха наведется на обе линии сразу, то изменение состояния детектировано не будет, ибо не будет разности фаз между линиями. Если помеха наведется на одну из линий, то изменение состояния тоже не будет детектировано, так как уровень на второй линии останется неизменным.
А в обычном проводе с ТТЛ-сигналом наведение помехи на одну из линий однозначно приведет к детектированию изменения состояния - будет "распознан" прием ложного бита. При наведении же помехи на оба провода изменение состояния будет распознано с высокой степенью вероятности.
конечно, протокол важен, кто ж с этим спорит-то. "Кривой" протокол может привести к сбоям даже на дифференциальной линии.vitalik_1984 писал(а):и еще что протокол важен.
- Сообщения: 4
- Зарегистрирован: Ср май 23, 2012 15:12:39
Возможно вопрос не туда, и немного глупый конечно, но очень нужна помощь, нужно на схеме (Дистанционно управляемая сетевая розетка) в Workbench поместить микроконтролер Attiny85-20Pu Видимо у меня кривые руки, не могу его найти, а если его там нет то на что его можно заменить?
Attiny85-20Pu не существует в природе. Тем более в бенче. Там есть PIC16F84. Его суй.
Docendo discimus
Как это?pyzhman писал(а):Attiny85-20Pu не существует в природе.
Ну то что в бенче его нет, это да. Зато в протеусе есть
- Вложения
-
- t85.PNG
- (29 КБ) 615 скачиваний
Упс. 
Docendo discimus
Зачем для такой простой задачи, tiny85? Возьмите Attiny13 ну или 25 в крайнем случаи.Ann123456789 писал(а):Возможно вопрос не туда, и немного глупый конечно, но очень нужна помощь, нужно на схеме (Дистанционно управляемая сетевая розетка) в Workbench поместить микроконтролер Attiny85-20Pu Видимо у меня кривые руки, не могу его найти, а если его там нет то на что его можно заменить?
- Сообщения: 149
- Зарегистрирован: Чт июл 28, 2011 18:12:28
Проверил все по отдельности, все работает, "схему не менял"vitalik_1984 писал(а): точно есть.
отправьте пустоту на ваш индикатор
отправьте восемь на ваш индикатор.
проверьте отдельно от других индикаторов этот.
- Вложения
-
- Изображение 001.jpg
- (29.73 КБ) 315 скачиваний
-
- Безымянный222.JPG
- (27.8 КБ) 331 скачивание
Последний раз редактировалось alexey6522 Ср май 23, 2012 17:53:20, всего редактировалось 1 раз.
я же уже написал,что видел устройства с такой схемой заводские причем.Может, конечно. В пределах лабораторного стола, и то, по словам Челюскина, недолго - минут 30-40.
по схеме Челюскина и резистора нет.а то что недолго работает не факт,что из-за того,что интерфейс неправильный вот я о чем.если не сразу перестает работать.без алгоритма передачи/приема не разберешь...
а если зажечь сегмент f что происходит?может вместе слиплись?по сути я и посылаю на сегмент АВС сигнал, а почему еще F зажигается не понятно
я тогда тоже думал :что у меня лишнее светится.оказалось шлейф распушился и соседние друг друга задевали.
Последний раз редактировалось vitalik_1984 Ср май 23, 2012 18:32:54, всего редактировалось 1 раз.
В поисках истины человек развивается.


