Роман, откуда Вы только время берете писать такие длинные ответы. Ваши последователи должны Вам памятник при жизни поставить за подробную и оперативную тех-поддержку. Не сердитесь, но я продолжаю улыбаться (именно улыбаться, как Вы отметили):
roman.com писал(а):
.... про это в даташите тоже написано .... Только я не всему доверяю что написано ....
Правильно, Атмелу нельзя верить не в чем. А серьезно, я во многом согласен с botchin-ом. В частности, во фрагменте
Код:
if (d>v) { //вероятность 50% m[x]=1; }; if (d<v) { //вероятность 50% m[x]=0; };
если d=v, то значение m[x] для данного х будет взято с предыдущей проверки. Это ничего? Кстати, почему вместо
Код:
if (PINB.0==1) { d++; };
на написать просто
Код:
d += PINB.0; //(или что-то типа d += PINB & 1, не помню какой тип у PINB.0 в AVR)
Также я разделяю его опасения по поводу нагрева модели на солнце и ухода частоты генератора. Степень прогрева трудно контролировать, т.к. она зависит от конструктивного исполнения модели и даже окраски корпуса (светлые места прогреваются меньше, чем тёмные) и географической широты места. В условиях солнечной Болгарии botchin знает о чём пишет. Нужен тест или какие-то аргументы с цифрами. Может Вы их проводили ранее, я не помню.
Понимаю, что сейчас уже некоторые повторили Ваши разработки, но на будущее - выбор типа МК не оптимальный. Именно, у Вас он постоянно занят ожиданием синхроимпульса или приёмом битов в логике 127/255. В "нормальных" МК это можно целиком переложить на аппаратные блоки. В частности, АЦП у MSP430 может сам произвести усреднение по, например, 256 выборкам без участия процессора, я уже не говорю про МК с DMA. На таких процессорах Вы легко добавите и другой функционал пока аппаратные модули будут заняты собиранием битов. Надеюсь, в скором будующем Вы пересмотрите свою позицию делать устройства из подручного хлама и начнете использовать специализированные микросхемы приёмо-передатчиков, драйверов моторов, и пр., где Ваши алгоритмы обработки данных реализованы аппаратно.
Почему я должен сердиться? )) Добрый человек.. сидит и улыбается.. поднимая всем настроение )) На прогмаммиста я не учился... Поэтому мне не стыдно если я чего-то не знаю... я только начал изучать МК...
1) Согласен. Выбор типа МК не оптимальный. Я звял самый простой... который не так жалко если сгорит... в ходе разных экспериментов... кораблики.. машинки.. это всё эксперименты - устройства из подручного хлама)) Если бы я на этом заработывал деньги... то тогда другое дело - я бы использовал специализированные микросхемы... А пока что просто учимся.
2) Почему вместо if (PINB.0==1) { d++; }; ..... не написать просто d += PINB.0; ? Я код программы пишу для себя. Просто мне так удобней читать. if (PINB.0==1) { // если... d++; // то... }; программа в тестовом режиме... постоянно что-то меняем...
На Си можно писать и так - if(!(PINC & (1 << n))) ... и по всякому... и как угодно))) И вообще все "в одну строчку" ))) А потом сидеть и вспоминать... что бы это значило? Что я этим хотел сказать... когда это писал)))
Ser60 писал(а):
если d=v, то значение m[x] для данного х будет взято с предыдущей проверки. Это ничего?...
if (d>v) { //вероятность 50% m[x]=1; }; if (d<v) { //вероятность 50% m[x]=0; }; Это нормально. У нас вероятность определения имульсов 50%... Т.е. 50/50. Если при подсчёте количество выборок, + и - у нас оказывается равным... то МК не может определить что это "1" или "0" ... В этом случае нам без разницы что записывать в массив "1" или "0"... Потому что, чтобы мы не записали в массив... мы в любом случае получаем 50/50 от того что передаёт передатчик... Поэтому мы просто оставляем предыдущее значение... Предыдущее значение у нас может быть "1" или "0" ... тоже с вероятностью 50/50... Поэтому ничего страшного не дубет )))
неопределенность + неопределенность = неопределенность Вот такая высшая математика ...
Вот если бы мы определяли импульсы например с вероятностью 40/60 или любой дугой, отличной от 50/50 (или как в UART 2 из 3), то тогда мы могли бы о чёмто говорить... т.е. тогда надо писать: if (d>v) { //вероятность "1" 60% m[x]=1; }; else { //вероятность "1" 60% m[x]=0; };
Почему выбрано именно 50/50 ? Потому что так мы получаем максимальную дальность связи... Вообщем примерно так.
Ser60 писал(а):
по поводу нагрева модели на солнце и ухода частоты генератора... Нужен тест или какие-то аргументы с цифрами...
Пойду посмотрю... если МК уже готов, то достану его из микроволновки )))
Да, насчет 50/50 все логично. А насчет температурного теста, может Вы имели в виду духовку? Как бы МК не начал в микроволновке ласты заворачивать. В некоторых радиомодулях предусмотрена программная подстройка нагрузочных конденсаторов у кварцевого кристалла для компенсации температурного ухода его частоты. Может и Вашу схему стоит дополнить датчиком температуры (?)
Если етому фрагменту программъ дадим идеалнъй меандр с Кзап = 0,5 и старт с 0 (0в) то на въходе получим 48 0 (сорок восемь нулей) m[0..47] = {0..0} Если етому фрагменту программъ дадим идеалнъй меандр с Кзап = 0,5 и старт с 1 (5в) то на въходе получим 48 0 (сорок восемь нулей) m[0..47] = {0..0}
оба варианта с одинаковъми начальнъми условиями m[0..47] = {0..0}. Если m[0..47] = {1...1} то и в обеих случаях резултат будет тот же.
if (d>v) { //вероятность 49.801% m[x]=1; }; if (d<v) { //вероятность 49.801% m[x]=0; };
Не должен бъть вариант в котором МК не смог бъ взять решение. Я так думаю. Вам виднее.
PS. Еще надо спомнить, что по определению у кода манчестера (стандартного) Кзап = 0,5. Т.е. у нас (в идеале) всегда будеть тот случай - половина въборки равна 1, вторая половина 0. А код-то работает. А декодер не работает. Тогда что будем делать?
_________________ Лом - ето город в Болгарии, а не инструмент юстировки електроники.
Открыта удобная площадка с выгодными ценами, поставляющая весь ассортимент продукции, производимой компанией MEAN WELL – от завоевавших популярность и известных на рынке изделий до новинок. MEAN WELL.Market предоставляет гарантийную и сервисную поддержку, удобный подбор продукции, оперативную доставку по России.
На сайте интернет-магазина посетители смогут найти обзоры, интересные статьи о применении, максимальный объем технических сведений.
Добрый день или вечер. И снова кораблик. Не куда я не пропал, занимался тех. творчеством сверлил и точил. Проект «кораблик» продолжается. Продвинулся пока не сильно. Пульт управления почти готов осталось настроить антенну и все. Выходной транзистор поставил КТ904 и разогнал до 300 милиА на нагрузке 50 оМ. Светодиоды переключения режимов в монтировал в кнопки их переключения, сами кнопки с селектора каналов телевизоров. Добавил переключатель выбора аккумуляторов 1 – 2, в коробку в лазит два комплекта. Передатчик конечно получился мощный, но у нас есть два варианта 1)- небольшой мощности передатчик и чувствительный приемник, 2)- мощный передатчик и тупой приемник. Второй вариант выйдет наверное скорее, но будем еще работать над приемниками. Вопросов пока нет, все понятно, а в манчестерных кодах я и с пол литрой не разберусь потому и не лезу. Вопросы будут задам обязательно. Пару фоток что на ваял за это время. Правда все получилось не очень красиво как задумывалось, но для сельской местности пойдет.
Продукция MOSO предназначена в основном для индустриальных приложений, использует инновационные решения на основе более 200 собственных патентов для силовой электроники и соответствует международным стандартам. LED-драйверы MOSO применяются в системах наружного освещения разных отраслей, включая промышленность, сельское хозяйство, транспорт и железную дорогу. В ряде серий реализована возможность дистанционного контроля и программирования работы по заданному сценарию. Разберем решения MOSO
подробнее>>
roman.com
Заголовок сообщения: Re: Радиоуправление. Переходим на МК.
насчет температурного теста, может Вы имели в виду духовку...
Вам нужно срочно работать над развитием чувства юмора Шучу ))
Нет... я имел ввиду холодильник)) Тест на низкие температуры...
В микроволновку мы будет засовывать наш кораблик... когда будем делать кораблик радиоэлектронной разведки... с постановщиком активных помех...))) Мы будем проводить тест на выносливость МК... будем считать плотности потока СВЧ энергии... Вт/м2 ))) А если наш кораблик будет плавать рядом с АЭС... то проведём ещё и тест на радиацию...
Но это будет потом... А пока ограничимся простыми тестами. ))
Ser60 писал(а):
Может и Вашу схему стоит дополнить датчиком температуры (?)
Я не успеваю делать столько тестов)) Это мне надо работать в лаборатории НИИ... сутками)))
Об этом уже подумал... всмысле пока ещё думаю)). Есть много разных вариантов... Если поставить кварц, то компенсировать не обязательно. Делать температурную компенсацию нужно если у нас RC-генератор.
Это всё потому что вы не читаете мои сообщения до конца...
botchin писал(а):
Не должен бъть вариант в котором МК не смог бъ взять решение. Я так думаю. Вам виднее.
Ну это по желанию...
Вы не задумались почему в программе я не задал постоянное значение выборки, а взял две переменные с и v, где с- выборка, v-вероятность. А потому что у нас праграмма работает с различной скорость приёма пакетов и переменной вероятностью определения кода... во загнул ... ))
с-принимает различные значения... в зависимости от скорости приёма пакетов...
for (a=0;a<c;a++) { if (PINB.0==1) { // ФНЧ d=d+1; }; }; if (d>v) { //вероятность 50% m[x]=1; }; if (d<v) { //вероятность 50% m[x]=0; }; ..................
А если вместо с=252; v=126; у нас будет с=253; v=126; ... что тогда будем делать? )) 253/2=126,5 ... Это "1" или "0" ? )))
botchin писал(а):
Еще надо спомнить, что по определению у кода манчестера (стандартного) Кзап = 0,5. Т.е. у нас (в идеале) всегда будеть тот случай - половина въборки равна 1, вторая половина 0. А код-то работает. А декодер не работает. Тогда что будем делать?
Давайте вспомним. В идаеле у манчестера Кзап = 0,5. Поэтому если мы будем делать выборку на всю длительность импульса манчестера... то всегда будеть тот случай - половина въборки равна 1, вторая половина 0.
Но к счастью у нас программа работает совершенно иначе. Мы "разбиваем" мпульс манчестера на два равных импульса... и проверяем каждый импульс отдельно... а потом эти два импульса "склеиваем" )))
импульс манчестера - это 1и0 или 0и1 ... Поэтому мы сначала проверяем первую половину импульса манчестера 1- или 0- А затем проверяем вторую половину импульса манчестера -1 или -0... Затем эти импульсы "склеиваем" и получаем на выходе полный импульс манчестера1и0 или 0и1 ...
Об этом я писал на второй странице этого форума... Но вы мои сообщения не читаете... )))
я не задал постоянное значение выборки, а взял две переменные с и v
То что въ не задали константу не означает что компилятор поступил так же. Въ нигде в программе не меняете величину с. Скорее всего компилятор принял ето как регистровую величину (участвует в циклах) и толко потому (регистровую) оптимизатор не задал ей определение const char c; и везде поставил на ее место 252. Так, что у вас с в одной программе всегда одной стойности
roman.com писал(а):
Мы "разбиваем" мпульс манчестера на два равных импульса... и проверяем каждый импульс отдельно
Где точнее? Укажите в горном фрагменте! Въ просто пока на пине 1 увеличиваете d (ето для вас первъй импулс),второй я не вижу где обрабатъваете. Но вот- вопрос. Что будет если при а>126 появится 1 на PINB.0 (помеха)?
Про филтрах и спектральном анализа уже писал.
roman.com писал(а):
В идаеле у манчестера Кзап = 0,5
Опять повторю: Если в первой половине у вас 126 въборок, у второй 126 въборок, но с первой въ берете толко 125 то у вас получается потеря информации. И ето будет работать (терять информацию) в идеалном случае при Кзап=0,5. Ви идеалнъй согнал просто въбросите. У вас вероятност не 50%, а другая. Я писал.
И последнее компютр, МК и вся ета стая делает не то что хотите, а то что въ ей сказали.
Устал уже!!!!!!
_________________ Лом - ето город в Болгарии, а не инструмент юстировки електроники.
Сейчас переменная с задаётся при настройке схемы... В самой программе мы переменную с не меняем! Это пока не меняем! Но мы можем её менять как захотим! Например припаяли резистор на АЦП... и меняем значение переменной с.
botchin писал(а):
Если в первой половине у вас 126 въборок, у второй 126 въборок, но с первой въ берете толко 125 то у вас получается потеря информации. И ето будет работать (терять информацию) в идеалном случае при Кзап=0,5. Ви идеалнъй согнал просто въбросите. У вас вероятност не 50%, а другая...
Вот с этого момента прочитайте пожалуйста внимательно... иначе вы так и не поймёте как работает моя схема:
Я с вами согласен! Если первая половина 126 выборок, и вторая половина 126 выборок... то получается потеря информации. Поэтому я делаю по другому! m[0]={}; и m[1]={}; - это один бит!
botchin писал(а):
Въ просто пока на пине 1 увеличиваете d (ето для вас первъй импулс),второй я не вижу где обрабатъваете. Но вот- вопрос.
Уважаемый roman.com, спасибо вам за ваши труды, но я не могу на схеме разгледеть номиналы деталей. Вы бы не могли выложить схему большего разрешения, и если можно то укажить какие используются транзисторы. Зарание спасибо
Ну хоть ктото сказал спасибо... а то одна критика Вам бы скачать любую программу sPlan. Там можно смотреть подробно... а главное самому менять схему. Какая именно схема вас интересует? У нас их уже целая пачка ))) Транзисторы мы берём из старого хлама. Какие есть, такие и ставьте. Можно подобрать их тех что есть.
MASIK писал(а):
Выходной транзистор поставил КТ904 и разогнал до 300 милиА на нагрузке 50 оМ.
12 х 0,3 / 50 % = ~ 1,5 ватт в антенне 27 мгц... На расстояние 200 метров ??? Да тут вообще приёмник не нужен Любой сверхрегенератор пойдёт... даже самый тупой.)) Только у нас ЧМ а сверхрегенератор больше любит АМ. Вообще не советую свякие свехрегенераторы... лучше даже простенький но супергетеродин с ЧМ.
MASIK писал(а):
Вопросов пока нет...
А зря! ))) Тут народ волнуется.. будет ли наш кораблик плавать при разных температурах... Поэтому я провёл пару тестов... С нашими самодельными радиомодулями проблем нет. Я свою рацию тестировал по всякому)) Со стабильностью всё нормально. А вот МК надо протестить. Для нормальной работы "кораблика", нужно чтобы МК-прёмник работал синхронно с МК-передатчиком. МК-приёмник включает запись по принятому старт биту и заканчивает запись по стоп биту... Выбег частоты не должен превышать пол импульса кода... Код - 50 импульсов. Время записи кода 90 мс. Смотрим выбег частоты тактового генератора МК ATmega8 по последнему импульсу кода: У нас ATmega8 в стандартном корпусе PDIP. Cогласно даташиту: Рабочие напряжения 4,5 - 5,5 В (ATmega8). На практике МК нормально работает 4,0 - 6,0 В (выше не проверял, МК жалко ). При напряжении 5 V выбег практически отсутствует (менее 0,1 mc): При уменьшении напряжения питания, частота встроенного RC-тактового генератора уменьшается... МК-приёмник работает с меньшей скоростью записи... не успевая записывать за передатчиком. При напряжении 4,5 V выбег составил 0,9 мс - т.е. пол импульса. (импульс 1,8 mc). Это нижний предел: При увеличении напряжения питания, частота встроенного RC-тактового генератора увеличивается... МК-приёмник работает с большей скоростью записи... опережая передатчик. При напряжении 5,8 V выбег составил 0,9 мс - т.е. пол импульса. (импульс 1,8 mc). Это верхний предел: При напряжении 4,9...5,1 V выбег не превышает 0,1 mc. Вывод: питание МК должно быть 5 V +/- 0,1 V. Тогда всё нормально. У нас в схеме стоит стабилизатор L7805C... он даёт такую стабильность. Значит всё нормально.
Температура. Температура указана примерно... на высокую точность не претендую... +/- погрешность градусника))) Но в целом получается такая картина: При +20 С выбег практически отсутствует: При понижении температуры частота тактового генератора увеличивается... МК-приёмник работает с большей скоростью записи... опережая передатчик. При -15 С выбег примерно минус 0,3 мс:
Отрицательные температуры МК переносит лучше)) Логично.)) Все полупроводниковые приборы больше боятся высоких температур.
При повышении температуры частота тактового генератора МК уменьшается... МК-приёмник работает с меньшей скоростью записи... При +40 С выбег примерно 0,5 мс: При +50 С выбег примерно 0,8 мс... подходим к максимальну... : При +60 С выбег примерно 1,1 мс... выбег превысил максимальный... видно что код не принят: При +70 С выбег примерно 1,4 мс... выбег превысил максимальный... видно что код не принят:
Вывод: МК-приёмник уверенно работает до максимум примерно 50 С...60 С. Значит сейчас кораблик может плавать и зимой и летом... -15 С ... + 50 С (примерно). Если летом оставить кораблик жариться на солнце... )) то кораблик перестанет слушаться команд. Примерно так.
botchin писал(а):
И еще: Но ето проверте!!!! Расчитал сколко инструкции (машиннъх тактах) будет разница при изменение температуру МК на 20град. Получилось свъше 300. Т.е. ваш код должен допускат изменение на целъх 1,2мС (милиСекунд).
Вы ошиблись в расчётах... более чем в два раза! Изменение на целъх 1,2мС - это более 40 С... Вот и верь после этого всяким даташитам)))
И ещё. Выбег частоты возможен только если температура МК-приёмника и МК-передатчика отличаются. Поэтому проведём ещё один тест. Ставим рядом Мк-приёмник и МК-передатчик и начинаем их нагревать одновременно: При +20 С и +20 С выбег практически отсутствует (не превышает 0,1 mc): +30 С и +30 С +50 С и +50 С +60 С и +60 С
Во всём диапазоне температур - 15... +60 выбег практически отсутствует (не превышает 0,1 mc). Т.е. уход частоты тактовых генераторов двух МК... компенсируют друг друга. Вывод: Если температура МК-передатчика и МК-приёмника равны... то никаких проблем с радиоуправлением нет. Не забывайте, то если мы плаваем летом, то кроме кораблика нагревается ещё и пульт.
Но вообще конечно это слабый аргумент))) Поэтому надо подумать над термостабилизацией схемы.
Пускай народ не волнуется плавать он не будет, он будет ходить по глади озер и ставков. Корпус нагреваться до +60 думаю не будет. 300 милиА это максимально, но это не означает что мы будем использовать столько. В расчетах входных контуров приемника кажется ошибка у меня. Надо будет сесть как то пересчитать. С этим справлюсь. Программу можно крутить как угодно главное ноги мк не менять, а то придется все переделывать, как ни как уже все в железе. Проверку на совпадение буду делать как и прошлый раз мк с мк соеденю и посмотрим совпадает или нет, ради эксперимента можем паяльничком контролеры погреть, и посмотреть. Работа пока стала праздник надвигается, после праздника продолжим.
Проек "кораблик" ещё не закончен... Будем решать проблемы по мере поступления)) Теперь мы знаем как работают наши МК... и где у нас слабое место в схеме...
MASIK писал(а):
300 милиА это максимально, но это не означает что мы будем использовать столько...
1) Я смотрю вы указали на пульте переключатель мощности передатчика 75% и 100% ... это неправильно. Т.к. при изменении мощности на 25% дальность меняется мало... Правильно делать как в профессиональных радиостанциях: Т.е. дальность пропорционально квадрату мощности... Это в теори... На самом деле ещё больше...
MASIK писал(а):
В расчетах входных контуров приемника кажется ошибка у меня...
2) Показывайте на схеме. У меня в схеме обычные контура. Там ничего считать не надо... Там всё просто - намотали, подкрутили в резонанс)) Вот и вся настройка.
MASIK писал(а):
Программу можно крутить как угодно главное ноги мк не менять, а то придется все переделывать...
3) А вот тут кажись маленькая проблемка... вы бы показали фотку своих плат. Там надо пару выводов на кнопки поменять ...
MASIK писал(а):
Проверку на совпадение буду делать как и прошлый раз мк с мк соеденю и посмотрим совпадает или нет...
4) Я думаю мы не будем пологатся на случай... щас подумаем.
А вот паяльничком контроллеры греть не надо... они этого не любят Лучше посветить на них настольной лампой... только не сильно)))
На пульте у меня нет ни одной надписи, с моим каллиграфическим почерком даже печатная машинка криво печатает да еще с орфографическими ошибками. Надписи на фото это чтоб было наглядно, а сам и так знаю. Прошлый раз проверял прошивки соединяв мк проводами через резистор все включалось, пока не доигрался. Прошивки были с фиксированными кнопками и все работало. Микро контролеры привезли но пока не прошивал. Закончу с настройкой прошью прошивками где кнопки без фиксации. Входные контура намотаны на каркасах с СМРК ф5,5 по 10витков проводом 0,56мм, при настройке сердечники выкрученные полностью и более менее выраженного резонанса нет. Это не великая проблема, настрою как положено в резонанс. Перенос кнопок на другие ноги мк не желательно, все уже запаяно и кнопки тоже впаяны в плату. Выкладываю схему по которой делал и печатку.
Входные контура намотаны на каркасах с СМРК ф5,5 по 10витков проводом 0,56мм, при настройке сердечники выкрученные полностью и более менее выраженного резонанса нет.
У них нет более менее выраженного резонанса... это два широкополосных контура. Один параллельный, второй последовательный... Я хотел перекинуть пару кнопок... мы заняли выводы АЦП, а двы других вывода болтаются без дела... На PC1 и PC0 ... можно что-нить подключить... всякие датчики... и т.д. Чёто я сразу не подумал...
это два широкополосных контура. Один параллельный, второй последовательный...
Нет там никаких последовательный контуров. Все контура там параллельные. Вот второй контур обычный параллельный. Катушка L11 и параллельно её три последовательно соединенных конденсатора.
))) Зачем вы нам нарисовали контур ПЧ - 455 кГц ??? Мы говорим о входных контурах на 27 МГц. Там два контура: параллельный и последовательный. Это у меня антенный коммутатор.
В режиме передачи открываются диоды VD3, VD4 ... получаем обычный П-контур: C17, C18, C19, C20, L5, L6. В режиме приёма диоды VD3, VD4 закрыты. Получаем П-контур: C18, C19, C20, L5, L6.... Далее идёт последовательный контур: C17, L7. Затем идёт параллельный контур: C21, L8.
Вот так вот хитро работает антенный коммутатор в моей рации.
Оба контура (последовательный контур C17, L7 и параллельный контур C21, L8) имеют полное включение. Поэтому у них маленькая добротность (Q~10 - "на глаз"). Поэтому у них нет выраженого резонанса. Настраиваются они очень просто: по максимальному показанию S-метра (индикатор уровня сигнала).
Полное включение даёт максимальную чувствительность приёмника. Избирательность у нас стоит на втором месте.
В режиме приёма П-контур оказывается немного расстоен из-за отсутствия C17. Сигнал с антенны на вход приёмника проходит с небольшим ослаблением... Но за счёт широкополосности П-контура это практически незаметно.
Такс... И снова кораблик! Я так чувствую мы уже всех тут достали со своим корабликом... скоро нас отсюда выгонят
MASIK писал(а):
Прошлый раз проверял прошивки соединяв мк проводами через резистор все включалось... все работало...
Ага... значит повезло. )) Тактовые частоты вдух МК совпали. Но такое бывает далеко не всегда...
MASIK писал(а):
а в манчестерных кодах я и с пол литрой не разберусь потому и не лезу...
Вот. А наша схема настраивается с помощью программы-исходника... Как же вы её буду настраивать...
Тогда я тут придумал такой вариант... Чтобы облегчить настройку я добавил в схему парочку подстроечных резисторов... В пульт: и кораблик:
Теперь настройка простая. Программу менять не надо. Вот какраз для такого случая у нас есть две переменные с и v. Подстроечным резистором меняем значение переменных с и v... Т.е. меняем количество выборок, а значит и время записи нашего МК-приёмника... Короче подгоняем скорость записи МК-приёмника под скорость передачи МК-передатчика... Получилась подстройка с точностью до +/- 0,2 мс.
Короче, подключаем осциллограф сначала к кораблику и подстраиваем кораблик... затем подключаем осциллограф к пульту и настраиваем пульт... крутим подстроечные резисторы, пока импульсы не совпадут... с точностью до +/- 0,2 мс. Вот и вся настройка.
MASIK писал(а):
Правда все получилось не очень красиво как задумывалось, но для сельской местности пойдет...
Для сельской местности может и пойдет... но вопрос стабильности мы так и не решили... Да и настройка мне такая тоже не нравится. Поэтому надо подумать. Есть много вариантов...
1) - ставим в схему кварц и вопрос стабильности решён)) Но это слишком просто и потому не интересно 2) - пишем сложный алгоритм выделения синхро импульсов... 3) - делаем программную АПЧ... UART с АПЧ ... такого я ещё не видел... 4) - ставим термодатчики (например терморезисторы или транзисторы... и т.д.)... они будут менять скорость записи МК и компенсировать уход частоты от температуры... Но тогда придётся тсавить такие же датчики и в передатчик... Сделать можно, но настройка будет вообще ужасная... запаришься настраивать всю эту схему...
Есть ещё целая куча разных вариантов... Но все они ещё сложнее в настройке...
5) - меняем формат пакетов. А вот тут уже интересно... В этом случае ничего в схеме не переделываем. Оставляем всё как есть. Просто подкручиваем программу... Смысл в том что выбег пропорционален длине пакета. Если передавать короткие пакеты, то выбег частоты не превысит допустимый... при любой температуре... Немного увеличится время передачи и всё.
Т.е. берём наш пакет: и делим его... например на три равных части: при этом выбег по частоте уменьшится тоже в три раза... А значит наш кораблик сможет плвать при температуре....
Если верить даташиту ATmega8: Предельно-допустимые параметры* Рабочая температура -55°C…+125°C
1) Разбил пакет на три равных части: Увеличилось время передачи... но впринципе и так пойдёт. У на скораблик для рыбалки... он плаваем медленно... Хотя если надо, то разгоним побыстрей.)))
Выбег частоты уменьшился в три раза. Теперь для настройки схемы не нужен осциллограф и подстроечные резисторы... Осциллографом можно ткнуть чтобы убедиться что всё нормально работает.
Т.к. выбег частоты тактового генератора МК уменьшился в три раза... то теперь наш кораблик плавает при любой температуре. Проверяем... + 20 С... выбег практически отсутствует (менее 0,1 mc): А теперь нагреваем наш МК-приёмник... до примерно + 80 С... выбег составил около 0,6 mc (максимально допустимый 0,9 mc): МК-приёмник нагрелся... что в руку уже не всзять))) Дальше греть не стал... провода начали вонять ... Но если продолжить график температуры... по получим максимально допустимый выбег при температуре около + 110 С...+120 С... )))
Вывод: теперь наш кораблик может плвать и зимой и летом... и даже если в озерер закипит вода + 100 C ... то наш кораблик будет себе спокойно плавать и дальше )))
2) индикатор уровня чето мне не нравится... короче нужно придумать другой алгоритм выделения шума... А пока что я просто подключил его к выводу S-метр на микросхеме К174ХА6... короче просто припаять один проводок с К174ХА6 на МК-приёмник. Потом если что... подумаем как сделать лучше.
С Вят Днем КО ВСЕМ, С Наилучшими пожеланиями. Схема собрана и с паяна извените вариации могут буть только в провишке без изменения ног (портов). Травить плату и собирать схему, НЕТ НЕ СОБИРАЮСЬ. Вариант который есть вполне Устраивает. СПАСИБО ВАМ. Просто потому что все это время. Проэкт по мере изготовления буду вылаживать до самого кораблика после покраски и отладки. Буду,,,,,, дай бог начинать еще проект кораблика можно будет заложить еще чего не будь но в данный момент мне нужно реализовать начатый.
С Вят Днем КО ВСЕМ, С Наилучшими пожеланиями. Схема собрана и с паяна извените вариации могут буть только в провишке без изменения ног (портов). Травить плату и собирать схему, НЕТ НЕ СОБИРАЮСЬ. Вариант который есть вполне Устраивает. СПАСИБО ВАМ. Просто потому что все это время. Проэкт по мере изготовления буду вылаживать до самого кораблика после покраски и отладки. Буду,,,,,, дай бог начинать еще проект кораблика можно будет заложить еще чего не будь но в данный момент мне нужно реализовать начатый.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения