Вторник, 27.06.2017, 11:47
Вы вошли как Гость | Группа "Гости"Приветствую Вас Гость | RSS
Главная | система дистанционного управления на ATtiny 2313 "c нуля" - Страница 37 - Форум | Мой профиль | Регистрация | Выход | Вход
Обитель RC-инженера
Форма входа
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 37 из 37«12353637
Модератор форума: ВитГо 
Форум » Разработка электронных устройств » Разрабатываю ! » система дистанционного управления на ATtiny 2313 "c нуля" (пошаговое изучение строительства систем радиоуправления)
система дистанционного управления на ATtiny 2313 "c нуля"
444с-с4Дата: Понедельник, 23.03.2015, 22:08 | Сообщение # 541
Рядовой
Группа: Проверенные
Сообщений: 5
Репутация: 0
Статус: Offline
Китайские 433 мГц. Передатчик 100% АМ(есть/нет несущей), приемник сверхрегенератор, на выходе при отсутствии сигнала шумы до амплитуды Uпит, сигнал на входе - соответственно что-то его повторяющее на выходе, в нашем случае - то, что выдает МКР-кодер и передается с помощью передатчика. Я проверял с помощью осциллографа из ПК работу кодера, передатчика и приемника (то, что поступает на вход декодера) - соответствие в длительности и сочитании, ну на глаз так 100%. Если надо будет можно, конечно, рассмотреть каждый импульс по длительности. Но по состоянию на теперь - это вообще не актуально. Вообщем у меня дискретная система на одну команду. Частота 4 мГц, длительность имп/пауза1(0) = млсек 5/5(10). Передатчик управляется переключением состояния выхода сопадения при прерываниях. Выдает 16 бит информации и 1 бит четности. Однократно, потом питание с МКР снимается. Декодер по int1 заносит значение TCNT в хранилище, если оно меньше меньшего - идет на выход из выполнения прерывания без изменения настроек(флаг фазы). если нет - clr TCNT, подготовка к обработке текущего события(при очередном прерывании), обработка значения TCNT. Если не норма - fault с обнулением и возвратом в начало. При приеме pause определяется значение бита, заносится в соответствующий байт инфы и в хранилище до следующей паузы. И так все 17 бит. Потом проверка бита четности, при совпадении проверка двух байт принятой инфы с настройками приемника, при совпадении - изменение состояния выхода управления нагрузкой, при несовпадении - fault с возвратом в начало. Вообщем, все почти как и у вас. Связка МКР-МКР работает стабильно. Все определяется, меняется как надо. Индикация - импульсы длиные. свободно выводится установка приемника(код) во время инициализации, а при обработке прерываний по мере поступления информации выводится: колич. принятых бит, колич. принятых единиц, значение TCNT для первых шести бит разделно имп/пауза, принятые байты(их значение), переданый бит четности и колич. обработанных прерываний.
При использовании р/канала вся эта селекция летит далеко, ужас и бидлам.
1) По дисплею декодер постоянно периодически уходит в fault, значение принятых байт=0 и бита четности также. А состояние выхода управления нагрузкой при этом время от времени меняется "самостоятельно". При этом не срабатыает останов проги, стоящий сразу после события совпадения принятой инфы и кода приемника, т.е. выполнение программы происходит не здесь, действительно fault, а эффект как от принятия нужной инфы. Причем работу моего передатчика декодер тоже оценивает как fault. Т.е. видны какие-то изменения в показаниях на дисплее, но fault.
2)Если не обнулять значения TCNT при этом - то все имп/пауза заполняются значениями примерно 5 млсек длительностей между int. А если не игнорировать значения "меньще меньщего" - то длительности начинают соответствовать 2 млсек отрезкам.
Может я что-то упустил в "разработка с нуля", очень уж хочется реализовать это дело.

Хотелось бы отдельно выразить огромную благодарность ВитГо за его участие, четкие указания, помощь, вообщем - руководство. Тема с LCD просто класс - еще бы пару слов про инициализацию - и делай с ним что хочещь.
Счастливо.
Прикрепления: 9452365.jpg(105Kb) · 1980281.jpg(208Kb) · 8678282.jpg(184Kb)
 
uwrteyДата: Вторник, 24.03.2015, 00:03 | Сообщение # 542
Полковник
Группа: Администраторы
Сообщений: 2398
Репутация: 9
Статус: Offline
Вы уверены что радиоканал работает как нужно?
Предлагаю собрать мой вариант и проверить работу радиоканала на нем.
можно организовать более простой проект - http://vg.ucoz.ru/forum/8-220-2 ( в последнем сообщении исходники и схемы )

Если радиоканал исправен, то значит вы не организовали ( или организовали но не должным образом ) проверку принятых сигналов на наличие помех.
Нужно еще раз глянуть мой исходник - там есть пример проверки принятого импульса по длине.
Если импульс длиннее или короче предполагаемого ( допустимого ) временного диапазона - то значит это помеха.

Извините, с Вашими исходниками я пока не ознакомился.

И еще хочу уточнить, какое логическое состояние входе передатчика заставляет его генерить несущую на 100% мощности - лог_1 или лог_0. ( всмысле импульс или пауза )
В моем случае лог_1. И по этому я позволил пренебречь тем фактом что импульс может быть разделен паузой-помехой. ( надеюсь понимаете о чем я )
в моем случае все помехи были то-же импульсами, вот их длину я и сравнивал с эталонной.
А если 100% мощности будут генериться при лог_0 ( при паузе ), то следует учесть, что помехи будут выступать в качестве пауз, а не импульсов!
Но если Вы хотите эталон, то имейте в виду что помеха может выступать и в качестве импульса и в качестве паузы ( например рядом есть еще один передатчик, который не уступает по мощности Вашему )

П.С.
Я поддерживаю Вас в выражении Отдельной Благодарности ВитГо за неоценимый вклад.


что то я не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Вторник, 24.03.2015, 01:04
 
444с-с4Дата: Вторник, 24.03.2015, 10:45 | Сообщение # 543
Рядовой
Группа: Проверенные
Сообщений: 5
Репутация: 0
Статус: Offline
Спасибо за ответ. Попробую ваши варианты по последней ссылки из "Управление двумя нагрузками" и с конечным вариантом из "С нуля". Как-то уже ни во что не верится. Если заработает - буду искать косяки в своем обработчике.
У меня несущая излучается тоже при "1", подаваемой с кодера. Виноват, не уловил связь между этим и ВЧ селекцией. Получается, это борьба с помехами от собственного передатчика? Настаиваете на выкладывании моих исходников? Может, сначала сам попробую разобраться. У всех ведь свои проблемы, дела, тут еще с кем-то возись.
Я тоже как-то сомневался - от куда взяться помехам в виде "провала" на фоне и излучаемой несущей. Но, действительно, работа рядом мощного передатчика, даже на другой частоте, вызывает "забитие" приемника. По-моему раньше в связной аппаратуре для борьбы с эти применялись делители входного ВЧ напряжения. Да, и сейчас у любителей, если большая плотность аппаратуры - это полезная фича.
Вообщем, давайте я пока порою сам, а там видно будет. Счастливо.
 
uwrteyДата: Вторник, 24.03.2015, 11:31 | Сообщение # 544
Полковник
Группа: Администраторы
Сообщений: 2398
Репутация: 9
Статус: Offline
Цитата
Получается, это борьба с помехами от собственного передатчика?
Нет, это борьба с помехами от других передатчиков.
На частоте 433 МГц работает очень много устройств. Особенно сигнализации автомобильные.

Цитата
Настаиваете на выкладывании моих исходников?
Нет не настаиваю. Читайте комментарии в моих исходниках.
А так же читайте форум - там очень внятно все описано.
Самое главное организовать обработку проверки длительности импульса.

Цитата
Я тоже как-то сомневался - от куда взяться помехам в виде "провала" на фоне и излучаемой несущей.
Я же писал выше, что бывает и такое.
Например рядом есть чужой передатчик с большей мощностью. Теперь давайте представим, что оба передатчика излучают 100% мощности. Затем чужой передатчик начинает излучать паузу ( я точно не помню, но мощность вроде снижается в несколько раз ) Вот Вам и пауза-помеха во время импульса. Приемник однозначно отреагирует на уменьшение мощности в эфире. Так-что если делать по уму, то нужно и импульсы и паузы проверять на истинность.


что то я не успеваю за своими мыслями......
 
444с-с4Дата: Среда, 25.03.2015, 18:31 | Сообщение # 545
Рядовой
Группа: Проверенные
Сообщений: 5
Репутация: 0
Статус: Offline
https://yadi.sk/i/D9qK6l0JfWXzB -это ссылка на Яндекс-диск с работой декодера конечный вариант из "Управление двумя нагрузками". Как сделать здесь гиперссылку не знаю. Ну да там ничего особенного, попробую рассказать.
Собрал немного не по схеме. Сейчас только дошло - не использовал С 0,1 uF. Использовал внутренний генератор на 8 мГц без предделителя. Хотел бы уточнить насчет тактовой частоты декодера. На схеме есть кварц 20 мГц. А в комментах говорите что длительность 1 тика=1 мксек. Так все-таки 20 мГц или 8 мГц с делителем на 8. Пересчитаю значения синхроимпульс+пауза и включающего и выключающего ипмульсов для полной идентичности картины под свою CLK, что бы отлавливать длительности как у вас.
С декодером дела у меня такие: собрал, в Студии откомпилил ваш .asm, залил, программатор отсоединил, подал питание. Еще, в вашей проге вставил короткую вспышку светодиода после выключения 1 канала и загрузки в флагфазы значения 2. Но это не сразу, сначала пробовал родную. Результат интересный: без какой-либо работы кодера первый канал самопроизвольно включается и выключается, т.е. однозначно "проходят" импульсы включения 267А-26DE. Причем когда канал выключается соответственно вспыхивает коротко диод сигнализирующий о"реальном прохождении" импульса выключения, выключении 1 канала и загрузки в флаг фазы 2. И это в отсутствии реальных сигналов. Вот это на данный момент меня больше всего напрягает. При этом второй канал ни разу самопроизвольно не изменил своего состояния. Кодер не пробовал, с этим бы разобраться.
1) можете ли вы что-то конкретно по этой ситуации сказать? Попробую переделать компоновку монтажа и питание от какой-нибудь "Кроны",
но, боюсь дело не в этом. Обычно наоборот- с длинными проводами на монтажке все работает, а когда начинаешь миниатюрить на печатке - возможны проблемы.
2) Вы повторяли это устройство, ответственно - оно рабочее? У меня только такие закидоны что-ли?
По программе декодера: сначала вы ловите синхроимпульс(везде + пауза, т.к. прерывание тлк по нарастающему) 3FAC-413C. Как попали- флагфазы и флагсинхронизации <-- 1 и при следующем прерывании по этим флагам - на WORK. По моемому по этой же причине (флаги=1) под меткой Work выполняется только две команды - сравнение и переход на Command_1_2, а проверка синхроимпульса здесь не может выполняться никогда(Возможно я и ошибаюсь). Ну а потом вы ловите импульсы или 996-19FA (импульс выключения) или 3FAC-413C (импульс включения). Не помню как выходите при несоответствии ничему. А жесткую последовательность с изменением управляющих выходов специально заложили(невозможность повторного изменения одного выхода, без изменения другого). Или уже давно это было, уже и не помнится?
Счастливо.

Добавлено (25.03.2015, 18:23)
---------------------------------------------
Гиперссылка после отправки сообщения сделалась сама!
А зачем задержка сразу после подачи питания. Хотя, к селекции она, наверное, отношения не имеет.

Добавлено (25.03.2015, 18:31)
---------------------------------------------
Правильно ли я понял, что "погрешность" импульса выключения +/- 0,75%, а импульса включения +/- 0,5%?

 
uwrteyДата: Четверг, 26.03.2015, 01:14 | Сообщение # 546
Полковник
Группа: Администраторы
Сообщений: 2398
Репутация: 9
Статус: Offline
Цитата
Использовал внутренний генератор на 8 мГц без предделителя. Хотел бы уточнить насчет тактовой частоты декодера. На схеме есть кварц 20 мГц. А в комментах говорите что длительность 1 тика=1 мксек. Так все-таки 20 мГц или 8 мГц с делителем на 8.
Если честно то не помню...
Но если перечитать форум ( там всего две страницы ) то сразу можно понять что 20 МГц. А в обще - без разницы. Главное что бы частота приемника совпадала с частотой передатчика.
Я там и на высокой и на низкой частоте пробовал - работает.
фуз биты можно глянуть тут в четвертом сообщении той ветки..

Цитата
можете ли вы что-то конкретно по этой ситуации сказать?
Какой МК Вы используете?
Я предлагал Вам использовать мой проект без каких либо изменений для того что-бы проверить радиоканал.
Для чего Вы вносите изменения в код?
Проверьте сначала как работает радиоканал. Потом будем думать почему не работает код.
Если Вы уверены, что связка передатчика с приемником работает нормально а по радиоканалу не работает, то этому может быть две причины:
1) так работает Ваш радиоканал
2) ошибка в коде - он просто не может отличить импульс от помехи...

Цитата
Вы повторяли это устройство, ответственно - оно рабочее?
Я разработал это устройство - оно рабочее.

Цитата
А жесткую последовательность с изменением управляющих выходов специально заложили(невозможность повторного изменения одного выхода, без изменения другого). Или уже давно это было, уже и не помнится?
Я, если честно, не пойму в чем вопрос..


что то я не успеваю за своими мыслями......
 
444с-с4Дата: Четверг, 26.03.2015, 14:03 | Сообщение # 547
Рядовой
Группа: Проверенные
Сообщений: 5
Репутация: 0
Статус: Offline
Ув. uwrtey. Произошла одна вещь, напряжение спало, оптимизма прибавилось. По поводу погрешности на длительности импульсов/пауз "Управление двумя нагрузками" я ошибся. Также совершенно по другому смотрю на логику управления каналами в декодере и вообще не подвергается сомнению работоспособность устройства. Дело в том, что я посмотрел как работает кодер. ПЕРЕДАТЧИК МОЛОТИТ НЕПРЕРЫВНО. ШУМОВ НА ВЫХОДЕ ПРИЕМНИКА НЕТ. При включенном кодере. Если его выключить, декодер будет вести себя как я описывал: самопроизвольное срабатывание 1 канала и полная тишина на втором. Я же изначально ставил задачу для себя: передатчик молчит, декодер в дежурном приеме. На кодере нажимается кнопка-подается питание на МКР-кодер, он выдает что надо на передатчик и снова все тухнет. Это-то я сделал, но вот что бы декодер при налачии на входе только шумов с приемника (Сверхрегенератор) самопроизвольно не срабатывал - никак. Выясняется, что в вашем проекте "Упр. 2 нагр." передатчик все время включается с периодом в сотни мкрсек - это же совсем другое дело. Сейчас посмотрю на передатчик в "С нуля".
1) Вам известны варианты работоспособные со сверхрегенератором по принципу как я только что описал?
Так-то ошибаешься, не сразу вьедешь, но не перегнул же нигде.
Счастливо.
 
uwrteyДата: Четверг, 26.03.2015, 15:22 | Сообщение # 548
Полковник
Группа: Администраторы
Сообщений: 2398
Репутация: 9
Статус: Offline
На какой частоте запускаете устройство? Попробуйте запустить на более низкой частоте.
( я имею в виду, что нужно сделать так, что бы длительность импульсов и пауз и на передатчике и на приемнике стала больше. )
Помехи в основном носят высокочастотный характер. Удачи.


что то я не успеваю за своими мыслями......

Сообщение отредактировал uwrtey - Четверг, 26.03.2015, 15:24
 
Форум » Разработка электронных устройств » Разрабатываю ! » система дистанционного управления на ATtiny 2313 "c нуля" (пошаговое изучение строительства систем радиоуправления)
Страница 37 из 37«12353637
Поиск:


Copyright MyCorp © 2017
Сделать бесплатный сайт с uCoz