Перейти к содержанию

Aleksandr Z

Members
  • Постов

    65
  • Зарегистрирован

  • Посещение

Весь контент Aleksandr Z

  1. Дефайны запросов потерялись #define I2C_REQUEST_WRITE 0x00 #define I2C_REQUEST_READ 0x01 #define SLAVE_OWN_ADDRESS 0xA0 // или 0xA2 - Аппаратный адрес
  2. В этом коде адрес передаётся полностью. //------------------------------------------------ //#define EEP_SIZE 1024 // 24C08 #define EEP_SIZE 2048 // 24C16 #define ADDR_H_MASK ((EEP_SIZE - 1) >> 8) void EEPROM_Write16(uint16_t addr, uint16_t data) { uint8_t addr_h = addr >> 8; addr_h &= ADDR_H_MASK;// mask 2 kByte if eeprom 24C16 addr_h <<= 1;// shift 1 addr_h |= SLAVE_OWN_ADDRESS;// |= 0xA0 addr_h |= I2C_REQUEST_WRITE;// |= 0x00 // start i2c_start_cond(); // send address i2c_send_byte(addr_h); i2c_send_byte(addr & 0xFF); // send data i2c_send_byte(data >> 8); i2c_send_byte(data & 0xFF); // stop i2c_stop_cond(); } //------------------------------------------------ uint16_t EEPROM_Read16(uint16_t addr) { uint16_t data_out; uint8_t buffer[2]; uint8_t addr_h = addr >> 8; addr_h &= ADDR_H_MASK;// mask 2 kByte if eeprom 24C16 addr_h <<= 1;// shift 1 // start i2c_start_cond(); // send address + request write i2c_send_byte((addr_h | SLAVE_OWN_ADDRESS | I2C_REQUEST_WRITE)); i2c_send_byte(addr & 0xFF); // restart i2c_restart_cond (); // send request read i2c_send_byte((SLAVE_OWN_ADDRESS | I2C_REQUEST_READ)); // read buffer[0] = i2c_get_byte(0x00); buffer[1] = i2c_get_byte(0x01); // stop i2c_stop_cond(); data_out = (uint16_t)(buffer[0] << 8) + (uint16_t)(buffer[1]); return data_out; } //------------------------------------------------
  3. Как это здесь нету никого, по любому народ заходит иногда . Да, там смысла нету операционники другие ставить. Экспериментировал на другой схеме, и в входной усилитель пробовал ставить TLC2272, она по другому работает - не понравилось. Думаю Rail to Rail особо ничего не изменят. Если не хватает динамического диапазона, так уж лучше питание повысить с 6 до 9 вольт на усилители, но будет примерно тоже самое, немного лучше конечно. LM833 хороший быстрый усилитель, малошумящий, даже от 5 вольт работает. Не знаю, думаю будет более правильным - подбирать усилители, сравнивая оригинальные, псевдо-оригинальные и от других производителей. Одна "не правильная" микросхема может испортить работу всей схемы! Конечно, если собрать "тяп ляп" из чего попало - то и работать так-же будет, это же логично.
  4. Добавил конденсатор C25-D дополнительный на 1nf, так мелкие цели лучше видит и фильтр работает, а перемычку отпаял .
  5. Кто-нибудь пробовал исключить из схемы конденсатор C25 - "Фазоболтатель" ? Надоел он мне и запаял перемычку, чувствительность к мелким целям стала лучше, при этом баланс грунта сдвинулся немного.
  6. @ARMagedon а зачем барыгам это знать . Это значение величины обратного переключения - плюс и минут от величины порога компаратора. Uпит = +3V/-3V. Rпос = 10000КОм. Rвх = 10КОм. Uгис = Uпит / (Rпос/Rвх) = 0,003V = 3мВ. Если хотите 30 мВ поставьте резистор 1 МОм, только учтите, при большой величине гистерезиса компаратора ваш прибор тупее станет, тональные посылки длиннее будут. Важнее однократное переключение компаратора, а величина гистерезиса это второстепенное. Подбирайте резистор как нравится. @ARMagedon ради желания воплотить свой идеал в жизнь перфекционист изводит себя и окружающих.
  7. WHITES IDX PRO который, так его ещё допиливать и допиливать , там 4 фильтра куда-то делись , и в входном усилителе не правильно фильтр рассчитан, и LF347 потребляет как пол схемы "Корчев-2014" . Так что зря такие выводы, мало там общего, если сравнивать функциональность схемы, а не номиналы деталей. Величина гистерезиса зависит не только от величины ПОС, а так-же от входного сопротивления компаратора. В схеме WHITES IDX PRO входное сопротивление компаратора равно выходному сопротивлению фильтра движения (очень маленькое), поэтому и резистор на 47 КОм поставили. А мне захотелось 3 мВ сделать (суммарно 6 мВ) вот и поставил 10 МОм. Гистерезис нужен, чтобы компаратор не "трещал" в момент переключения, его переключение будет однократным, срабатывания на цели будут выраженными, поэтому и написал: - "После окончательной настройки", чтобы разница заметна была... Получается схема "Корчева-2014" - это унифицированный WHITES IDX PRO и Tesoro lobo, "операционники" лучше, фильтры добавлены и синхродетектор 2-х полупериодный (не как в Tesoro). По большому счёту разница только в фильтрах и количества каскадов в них, в нормальных схемах их многозвенными делают и не активными.
  8. @ARMagedon а вы не отмывайте плату от китайского флюса, тогда и резистор запаивать не придётся , будет примерно от 3 до 15 МОм, в зависимости от температуры. И подбирать не надо , договорились?
  9. После окончательной настройки можно добавить в компаратор LM393 цепь гистерезиса - в ПОС поставить резистор на 10 МОм.
  10. На днях запаял панельку и ключи подбирал из кучки разных. В итоге поставил HCF4016BE ST Microelectronics Malaysia, попался 1 шт. оригинальный, с облуженными ножками, работает лучше ключей СD4066BE, это заметно на максимальном пороге чувствительности, срабатывания на цели мягче стали. Пробовал CD4016BCN (на оригинал не похожи) - они ещё хуже работают, чем СD4066BE. Где-то на форуме читал, что ключи в Терминатор-3 лучше поставить HCF4016... А вообще лучше из 10 штук 1 выбрать, так и делал - "на слух" ключи подбирал, думаю никакие приборы разницу не покажут. Оригинальные СD4016 пока не нашёл, пусть HCF4016BE работает... P.S. Это "сердце" прибора - самая важная деталь, синхронный детектор .
  11. @transistor85 примерно по такой схеме пробуйте разные "операционники" с n-p-n транзисторами на входе.
  12. @Yanrde12 Вот и я повторил, чужую ошибку. Все, кто использовал ключи CD4016 молчат как партизаны , типа - всё так и должно быть. По документации CD4066 и CD4016 совершенно разные микросхемы, а значит и работают они по разному! В аналоговой схеме на ОУ предпочтительней использовать CD4016. Распиновка выводов у CD4066 такая же. Вот такие вот дела, придётся заказывать оригинальные микросхемы CD4016.
  13. Вот народ пошёл, до перемычки "докапались" . Я для барыг не стараюсь, надо было специально 2-3 ошибки сделать . Простым радиолюбителям нужно ознакомиться, прочитать тему полностью, оценить свои силы так сказать... Эта схема не для "машинной" сборки, детали в каналах тщательным образом подбираются по ближайшим значениям (у меня из 10 конденсаторов всего 2 или 4 штуки подходят, остальные на полку, несколько заказов делал, микросхемы TLC2272 1-й раз "левые" прислали), не всё так просто. Тяп-ляп это когда не глядя собирают, тут каждую детальку нужно об лудить хорошо, нейтральным флюсом, желательно натуральной живичной канифолью, а не дерьмом китайским или канифолью которая пластмассой пахнет, отвалится потом всё. И припой должен быть свинцово содержащий, чтобы на морозе ваша плата не рассыпалась на детали , такое свойство имеет чистое олово на морозе, при -33'С трескается и превращается в порошок. @ARMagedon перфекциони́зм это плохо , вредит он жизни, поверьте... Я бы был доволен, если бы вы нашли какую нибудь неточность в схеме, внесли свою корректировку, предложили что-нибудь ПОЛЕЗНОЕ... Это пустые рассуждения. Удачи, добрый человек!
  14. @ARMagedon перемычка нужна для отключения регулировки дискриминации, если не ставить подстроечный резистор, так-же можно переменный резистор запаять за место подстроечного. Это вид сверху, шелкография не мешает контактным площадкам. Как всё трудно, так выбирайте нужна она вам или нет... Какая проблема, заняться нечем?
  15. @ARMagedon Так делал - размеры платы, а несколько дорожек (перемычек) на землю нарисовать не сложно. Свою плату изготовил ЛУТом, быстро и надёжно, всё об лужено. 1. Перемычки по питанию для настройки, измерений, внимательнее... 2. Широкие дорожки чтобы ваши детали не отвалились от удара, при первом падении через бревно в лесу . К тому-же 1-я изготовленная плата, установленная в корпусе, падала со стола "плашмёй" на деревянный пол, с высоты 1 метр, при этом ни одной микро трещины, нарушения пайки контакта элемента, это-же хорошо . Широкие дорожки земли и питания для меньшего шума, это вам не "цифра", где можно тонкие углами рисовать. + Зрение не у всех 1.0. 3. Размеры контактов - см. п.2. Шелкографию на заводе модератор заказа поправит, там 2 кнопки нажать в программе , не переживайте. 4. Это вам не СВЧ !!! Изготовленная плата методом "ЛУТ" может быть понадёжнее заводской, где дорожки под маской оловом не покрыты и толщина меди занижена, сейчас везде экономят, качественная плата дорого обойдётся. Завод это для особо ленивых , и выбор всегда должен быть, может 2-х сторонний стеклотекстолит проблемно найти и так далее, взял и подредактировал за 5 минут как нравится и нет проблем. Не вижу проблемы, это всё мелочи... В лучшем случае голову ломать не придется - как правильно дорожки и землю развести. @ARMagedon Лень враг № 1, предложите свой вариант платы. К чему такие вопросы, они на работоспособность влияют как-то, улучшают характеристики .
  16. От амплитудно-фазовой болтанки входного усилителя сигнала RX все избавились, фильтры настроили правильно? Выше было сказано: - На операционных усилителях в каскаде RX невозможно обеспечить фазовую ровность. Как выяснилось, возможно . При температурном дисбалансе датчика (так-же со временем, от старости смолы) амплитуда сигнала RX может увеличиваться или уменьшаться. Это приводит к небольшому смещению фазы сигнала в каскадах входного усилителя, причина этому - фильтры. Так-же при больших сигналах от массивных целей может смещаться шкала дискриминации. Если большой кусок железа (не легированный, без ржавчины и близко от датчика) определяется как цветной металл, значит фильтры настроены не правильно. Так вот, этот не маловажный момент можно полностью свести к минимуму! Конденсаторы C21 и C26 поставить меньшей ёмкости, частота среза ОУ будет выше. Для частоты 18 КГц, в итоге поставил 22пф, а на частоте 7 - 9 КГц конденсатор на 100пф, думаю самое то будет. И фильтр C25, R24 настроить подальше от основной частоты, т.к. на основной частоте он больше смещает фазу (вот она, амплитудно-фазовая болтанка). С25 лучше поставить на 10-22NF, сместить в низ частоту, ближе к 2 КГц, при этом смещение фазы почти не будет при изменении амплитуды сигнала RX. Удары по ветка 100-300 Гц, так что фильтровать их будет хорошо . Пробуйте, измеряйте, сравнивайте. Дополнительный резистор 20-68 кОм в звуковом генераторе уменьшает ширину импульса (когда ключ динамика VT1 открыт), соответственно потребление питания меньше. Собрал схему на новой плате, как часы работает . Потребление 24 мА без звука (в генераторе TX резистор R12 - 24E, R13 - 0E), а со звуком примерно 30 мА. Отключать дискриминацию лучше подключением резистора на 10 кОм от вывода 3 микросхемы компаратора IC8 к плюсу питания +3V (это избавит от наводок на вход формирователя импульсов), а резистор R44 - 24K лучше подключить к 8 выводу микросхемы IC8, после фильтра питания.
  17. Всем привет! Нарисовал новую печатную плату, размер стандартный 100х100мм, всё же решил выложить её на форум. Микроконтроллер не добавлял, т.к. есть ещё одна задумка на МК, при желании "2-й этаж" сделаю. Плата с одним линейным стабилизатором как в оригинальной схеме, т.к. цепи питания усилителя RX, синхронного детектора и фильтра движения фильтрованы более чем достаточно. Добавил дополнительный фазовращатель в канал дискриминации, и в синхронном детекторе стало на 4 детальки больше. Питание формирователя импульсов - CD4069 дополнительно фильтровано конденсатором 100 микрофарад. Перемычки в цепях питания облегчат настройку и измерения. Все "крутилки" установлены на плате, можно только переменный резистор "БГ" вывести на корпус. В место переключателя "Дискриминация" можно поставить джампер. Защита от "переполюсовки" на IRF7205 или IRF7406, а по питанию ключа динамика можно поставить встречно направленный диод SS54. Поменял местами на плате выводы инверторов формирователя импульсов и усилителей IC2 LM258 для более компактной разводки проводников. Резистор 0 ом соединяет землю формирователя и ключей в обход входного усилителя RX (ещё лучше как у автора - двухсторонний стеклотекстолит использовать, 2 сторона земля, на схеме "-3V"). Каждой детальке присвоен идентификатор, можно без схемы паять . Контрольные точки - выводы из разъёма PLS. Около каждой микросхемы сигнальная (виртуальная) земля шунтирована на общую землю блокировочными конденсаторами 100nf. В общем всё "зафильтрованно" . Размеры платы делал специально для JLCPCB, диаметры отверстий корректируйте на своё усмотрение. Формат файла lay6. З.Ы. Удачи вам, радио-копатели !!! MD_Korcheva_2014_DIP_v2.0_lay_FR06mm.rar
  18. Добавил дополнительный фазовращатель в канал дискриминации по заветам пользователя ELM (с небольшим изменением номиналов), теперь фольга на месте, подключать дополнительный конденсатор на контур RX нет необходимости. Настройка баланса грунта изменилась, ТОФ можно менять в больших пределах - это даже лучше! Измерил потребление питания генератора и обозначил на схеме (общее потребление 43 - 55 мА от 9 вольт). В схеме приёмника конденсатор C25 поставил на 22nf, т.к фаза сигнала отставала. Второй каскад УНЧ инвертирует фазу сигнала (на 180 градусов). Главное изменение в схеме синхронного детектора, теперь он не затыкается большими сигналами, ферритом делал расбаланс датчика до 1,5 вольт (напряжение на контрольной точке - КТ2), чувствительность падает не сильно, @rommon благодарю за подсказку. Раньше такого не было и вход микросхемы усилителя синхродетектора затыкался (диоды которые снижают КУ в фильтре движения тут совсем не причем, на выходе микросхемы синхродетектора сигнал отсутствовал - это при больших сигналах на входе ключей, более 500 - 600мВ). Питание ключей тоже нужно хорошо отфильтровать, чувствительность будет лучше! Напряжение питания ключей должно быть не меньше чем VDD - 0,5V, чтобы защитные диоды не открывались и не подгружали выход формирователя импульсов, при этом искажая сигнал управления ключами - пользователь ELM всё подробно разжевал, какой номинал резистора лучше поставить по питанию ключей! В схеме синхродетектора добавил несколько деталей, напряжение обозначил на контрольных точках. Звук в динамике ровный, без искажений. Можно сказать, что сейчас прибор настроен должным образом. Теперь можно новую печатную плату рисовать. Думаю, что совсем не обязательно собирать кучу разных схем металлоискателей, нужно одну правильно собрать, настроить и пользоваться. Не поленился, заново перерисовал схему и добавил все изменения, в архиве схема полностью. Пользуйтесь на здоровье . MD_Korcheva_2014_Modifed_2.0_Schems.rar
  19. @RadioRamzes1 после того как заменил в фазовращателе советскую керамику на современные NP0 стало нормально - это было летом, при минусовых температурах работу схемы ещё не проверял. Вероятно стабильность входного контура RX зависит не только от качества конденсатора, от кабеля датчика так-же, у МГТФЭ пара сотен пикофарад на 1 метр точно есть, емкость кабеля может "играть" при больших перепадах температуры, хоть и не сильно, но шкала дискриминации может смещаться - это свойственно для любой схемы металлодетектора. Тут как ни крути, супер-термостабильность датчика сложно получить, и после изготовления они получаются у всех разные, сравнить стабильность датчика не получится . Использовать для проверки датчика контрольный генератор, частотомер и морозильную камеру нет желания.
  20. @RadioRamzes1 сегодня ещё раз под ЛЭП проверил, всё работает стабильно, не сомневайтесь . Кабель датчика самодельный, контура TX и RX подключены экранированным проводом МГТФЭ (+ для экрана датчика 1 провод МГТФ) , контурные конденсаторы стоят в датчике, обмотка TX не экранирована (в следующем датчике обязательно буду экранировать, т.к. контура идентичными должны быть). В схеме свободные выводы МК не будут наводки "цеплять", они слишком короткие.
  21. Становится интересно , можно подробнее? Думаю, что не нужно выжимать все соки с микроконтроллера в виде "дополнительных сервисов", энергопотребление будет важнее, и это не получится с данными МК. Тут одна задача - тактирование от внешнего кварца и отсчёт тиков таймером для стабилизация частоты генератора. Таймеры относятся к периферии, выполняют свою функцию как отдельное устройство, нужно только отключить глобальные прерывания по совпадению и переполнению таймера, т.к. МК выполняет их с другими глобальными прерываниями согласно таблице приоритетов, вот тогда не будет неточности в временных интервалах - разной длине периода соседних тактов частоты. Вообще нет никаких проблем с "торможением" МК , если отключить 0-й таймер который 1КГц считает (и даже нужно, т.к. там прерывание по переполнению - это в версии с uart), то потребление будет ещё меньше, а с МК ATtiny24A ещё меньше. От 3.22 вольта ATmega8a отлично работает, ТОФ (точка отсечения феррита) стоит на месте - этого достаточно. Всего лишь поделился своими результатами, пользуйтесь на здоровье... Следующую печатную плату под "тиньку" разводить буду, зима длинная .
  22. Схему генератора на ATtiny24A и файлы нужно кому-нибудь , может зря всё это выкладываю?
  23. Перенёс код генератора на ATtiny2313a, т.к. в DIP корпусе он размером меньше. Добавил установку 2-й частоты выключателем (джампером), можно на 100Гц ниже сделать от основной или использовать частоту для второго датчика. Дешёвых и легкодоступных микроконтроллеров с 8-и выводами и 16-битным таймером, в DIP корпусе не нашёл, ориентировался больше по цене, вообще есть такие - новые МК, но только в SMD и с интерфейсом программирования UPDI, дорогие они для такой задачи и с программатором не всё так просто. Ещё как вариант МК ATtiny24A/ATtiny44A SOIC-14 можно использовать - он самый дешёвый (с 16-битным таймером), но это только для SMD печатной платы. Вот схема и исходники для ATtiny2313a, интерфейс UART и память EEPROM не используются. ATtiny2313A_Gen_TX.rar
  24. Потребление питания микроконтроллером было завышенным, и что интересно общее потребление (вместе с стабилизатором на 5 вольт) изменялось от 21 до 24 ма, нашел причину, была не точность в программе. При питании 3,3в проблем не было, потребление больше всего на 0,5 ма. В общем все неиспользуемые выводы микроконтроллера нужно было сконфигурировать на выход (или на вход, используя Pull-Up - подтягивающие резисторы), при этом порты МК не будут "болтаться", переключаться сами по себе или от наводок и потреблять лишние миллиамперы. Ещё забыл отключить аналоговый компаратор, т.к. по умолчанию он был включен. Все неточности в программе генератора исправил. Удалось получить потребление питания только микроконтроллером 7,3 ма при 5 вольт и 4,26 ма при 3,22 вольт - это с прошивкой без интерфейса UART, использования EEPROM. Линейный стабилизатор потреблял 8,2 ма. В общем все ошибки исправил, второй архив версия 1.02. Изменил алгоритм, можно теперь устанавливать частоту через UART в реальном времени (без повторного включения МК), это ещё удобней. Главное не забыть прошить FUSE биты, в шапке исходников указаны, для версии с EEPROM они другие, это очень важно. После настройки частоты переключатель "PROGMEM" нужно обязательно разомкнуть - отключается инициализация UART и "лишний" код обработчика команд, который должен использоваться только при настройке генератора, частота сохраняется в EEPROM память. "Косяков" в коде теперь нет, а кто найдёт - пишите. Используйте современные стабилизаторы для питания микроконтроллера, типа - HT73xx они в покое потребляют 4 микроампера, только распиновка выводов в SMD отличается от AMS1117. На конец-то закончилось эта волокита с кодом программы. Вот и новые архивы: Gen_TX_ATmega8a_Fix.rar Gen_TX_ATmega8a_uart_v1.02.rar
  25. Небольшая корректировка - Конденсатор C10 нужно вернут в схему, транзистор VT2 используется, ток в контуре будет больше, сигнал с микроконтроллера (генератора) подаётся через RC цепочку (1k, 10n) на базу транзистора VT1 (как в схеме через диод VD2). Как выяснилось, со старым кодом для ATmega8a, который без интерфейса UART/USART и функции считывания частоты из памяти EEPROM, генератор и МД работает немного лучше. Не знаю с чем это может быть связано, т.к. функция прерывания таймера и отсчет тиков (длинна полуволны и периода) работает не зависимо от основного кода программы. Отказавшись от использования памяти EEPROM можно питать микроконтроллер от 3,3 вольта. Частота TX прописывается в исходниках, нужно будет "пересобрать" файл прошивки в программе Atmel Studio. Это не сложно, главное шкала металлов не бегает и частота TX стоит на месте. Конденсатор контура RX должен быть термо-стабильным, качественным. Вот даже интересно, подхватят эту идею владельцы "Терминаторов-3", только лучше код на 8-ногую ATtiny перенести, меньше места займёт. Сейчас использую этот код программы + плата генератора в DIP - lay6 и схема. Gen_TX_ATmega8a.rar
×
×
  • Создать...