Устройство на Ardiuno для контроля пересечения барьера.

Ардуинщики всех стран - объединяйтесь! В этом форуме, конечно.
Ответить
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пн фев 16, 2026 17:30:02

Сообщение Rapra »

Так ведь эти дефайны будут сконцентрированы внутри уровня Hardware Abstraction Layer и дальше уже не пойдут. Дальше работаем с тем функционалом, который предоставляет уаовень HAL в всде оберток функций (методов, по терминологии плюсов).
С дуру можно конечно и член сломать, но вряд ли вы сами будете так нахрапом действовать
Реклама
Друг Кота
Сообщения: 9339
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Сообщение roman.com »

дело больше не в токах, а в коэффициенте усиления усилителя.
и чем больше коэффициент усиления усилителя тем больше надо фильтров по питанию. больших и разных ))
Реклама
Друг Кота
Сообщения: 9339
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Сообщение roman.com »

в схеме два светика. вывод 5 и 6.
значит программа мигалки буде такая.
PORTD = 0b00100000; // первый включить, второй выключить.
PORTD = 0b01000000; // первый выключить, второй включить.
получилась мигалка ))

а если ещё что надо добавить то мы перепишем программу ))

а что там ещё есть ?
на работу усилителей программа не влияет.
есть ещё два светодиода... выводы 4 и 7.
значит надо переписать нашу программу ))
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пн фев 16, 2026 17:30:02

Сообщение Rapra »

А Рома не слышал про лог операции OR и AND?
Реклама
Эиком - электронные компоненты и радиодетали
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

Rapra писал(а): Пт июл 03, 2026 13:12:19 Так ведь эти дефайны будут сконцентрированы внутри уровня Hardware Abstraction Layer и дальше уже не пойдут.
А! Ясно. Тут вышла недосказанность с моей стороны - я не использую HAL. Использовал бы, предубеждений особых нет и считаю его удобным, но для ch32v он просто ужасен (Вы бы точно его создателей назвали нехорошими словами).
Реклама
Потрогал лапой паяльник
Сообщения: 398
Зарегистрирован: Чт май 07, 2026 00:30:38

Сообщение Zapolyarny »

roman.com писал(а): Пт июл 03, 2026 13:13:31 и чем больше коэффициент усиления усилителя тем больше надо фильтров по питанию. больших и разных ))
А скажите (когда в очередной раз перепишете программу), если два каскада усилителя, то усиление помех как происходит? В соответствии с произведением коэффициентов или применительно к каждому, и если второе, то какой каскад более значим?
Реклама
Друг Кота
Сообщения: 9339
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Сообщение roman.com »

Рома много чего слышал ))

а где наша программа ? ))

PIND = 0b11110000; // выводы 4,5,6,7
PORTD = 0b00000000; // выводы 4,5,6,7
w(1){
PORTD = 0b00100000; // включить 5, выключить 6
PORTD = 0b01000000; // выключить 5, включить 6.
}
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пн фев 16, 2026 17:30:02

Сообщение Rapra »

Zapolyarny писал(а): Пт июл 03, 2026 13:31:04 А! Ясно. Тут вышла недосказанность с моей стороны - я не использую HAL. Использовал бы, предубеждений особых нет и считаю его удобным, но для ch32v он просто ужасен (Вы бы точно его создателей назвали нехорошими словами).
Я ведь не зря написал отдельными словами Hardware Abstraction Layer, чтобы подчеркнуть этим отличие общего понятия от библиотеки, поставляемой производителем. Hardware Abstraction Layer - это один из уровней абстракции, принятой в философии построения программы. Вы же не будете из main напрямую дергать регистры и биты. Хотя, так делают новички. Но опытные программисты напишут эти самые уровни абстракции. Так общепринято, считается более правильным, не я это придумал.
Уровень Hardware Abstraction Layer можно написать самому, а можно взять то, что было написано производителем микроконтроллера. В концепции Ардуины этот HAL представлен например функцией digitalWrite(). Эта ф-ция подходит к любому микроконтроллеру внутри концепции Ардуины.
Поэтому, лично я не вижу необходимости переписывать в плюсовом стиле заголовочники микроконтроллеров, ибо оное достаточно муторное занятие, и всё равно будет закрыто на уровне HAL, выше уже не пойдет. Так что смысл терять время?
Друг Кота
Аватара пользователя
Сообщения: 15671
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Простой усилитель...
Посмотрим к примеру те же "стопы"...
Там минимум полосовой УНЧ с настройкой на несущую частоту излучателя, а не просто усилитель переменного сигнала...
Как такой выполнить - вариантов много встретить можно. Заодно и случайные помехи удавятся...
:roll:
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 178
Зарегистрирован: Ср июн 03, 2026 18:51:39
Откуда: Воронеж

Сообщение Massaraksh7 »

roman.com писал(а): Пт июл 03, 2026 12:03:46 Все нормальные люди первым делом ставят фильтры по питанию.
Если быть точным то нормальные люди вообще не делают усилители без фильтров по питанию )) Поэтому у нормальных людей обычно таких проблем не возникает.
А вот это реально помогло. Спасибо, Роман. Правда я поставил только один такой фильтр, поскольку дорожка питания там одна идёт. Не подскажешь, где на текущей разводке поставить фильтры на каждый канал? В смысле, где конкретно расположить резисторы и конденсаторы?
a2.png
(208.29 КБ) 9 скачиваний
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пн фев 16, 2026 17:30:02

Сообщение Rapra »

Да не надо там на каждый канал. Достаточно просто отделить аналоговую часть питания от цифровой. Там на плате дорожки питания на аналоговую часть проходят после питания микроконтроллера, а это и есть потенциальный источник проблем. В первом каскаде резистор от плюса питания как раз приходит на фотодиод, и как раз этот путь и является первым источником усиленной каскадами помехи. В исходной схеме этого резистора не было.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 178
Зарегистрирован: Ср июн 03, 2026 18:51:39
Откуда: Воронеж

Сообщение Massaraksh7 »

Rapra писал(а): Пт июл 03, 2026 16:39:59 В первом каскаде резистор от плюса питания как раз приходит на фотодиод, и как раз этот путь и является первым источником усиленной каскадами помехи. В исходной схеме этого резистора не было.
Это я потом поставил. Но, что с ним, что без него - не работало.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 178
Зарегистрирован: Ср июн 03, 2026 18:51:39
Откуда: Воронеж

Сообщение Massaraksh7 »

Massaraksh7 писал(а): Пт июл 03, 2026 16:36:13 В смысле, где конкретно расположить резисторы и конденсаторы?
Сейчас у меня вот так, и помехи уменьшились, где-то, до полувольта.
a2.png
(214.67 КБ) 14 скачиваний
И светодиоды светятся, значит сигнала нет.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 178
Зарегистрирован: Ср июн 03, 2026 18:51:39
Откуда: Воронеж

Сообщение Massaraksh7 »

Сейчас, скорее всего, плату не буду переделывать, но на будущее вижу так:
a6.png
(234.01 КБ) 10 скачиваний
Можете покритиковать, восприму с благодарностью, единственно, разъём не хочу удалять, уж больно удобно с ним.
Нашел транзистор. Понюхал.
Аватара пользователя
Сообщения: 178
Зарегистрирован: Ср июн 03, 2026 18:51:39
Откуда: Воронеж

Сообщение Massaraksh7 »

Massaraksh7 писал(а): Пт июл 03, 2026 18:27:09 разъём не хочу удалять
Хотя, можно его поближе к ножкам расположить
a7.png
(229.64 КБ) 7 скачиваний
Друг Кота
Сообщения: 9339
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Сообщение roman.com »

во первых там ИМПУЛЬСНЫЙ блок питания.
я не знаю какую пульсацию он даёт.
смотреть надо.
микроконтроллеру пофигу ))
а усилителю нет.

для начала я бы подал питание от другого блока питания. нормального ))
идеальный блок питания - аккумулятор ))

откуда я знаю куда там впихнуть фильтр питания )) дорожки резать надо...
принцип простой - конденсатор фильтра ставят поближе к транзисторами. чтоб помехи замыкались на массу по кратчайшему пути.
и фильтры ставят два. на каждый усилитель свой фильтр. чтоб исключить влияние одного усилителя на другой.
это все на стадии проектирования думается.

но для начала в качестве эксперимента я бы увеличил ёмкость конденсаторов вплоть до 1000 мкФ.

а вообще я бы по два фильтра поставил.
так надежней ))
Вложения
cxema.png
(73.8 КБ) 7 скачиваний
Друг Кота
Сообщения: 9339
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Сообщение roman.com »

все-таки питание на аналоговую часть МК я бы тоже подал. аналоговая часть кушать не простит )) пока АЦП программно выключен ток не меняется.
зато будет вторая земля для МК. ))
но это я.
как у других не знаю.
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пн фев 16, 2026 17:30:02

Сообщение Rapra »

Massaraksh7 писал(а): Пт июл 03, 2026 18:27:09 Можете покритиковать,
Я уже писал ранее - дорожки питания и земли к транзисторам не должны идти после дорожки питания микроконтроллера. Лучше отдельными дорожками запитать микроконтроллер и отдельными дорожками - транзисторы. А сходиться эти дорожки должны в одном месте, в точке подключения от блока питания
roman.com писал(а): Пт июл 03, 2026 18:47:03 но для начала в качестве эксперимента я бы увеличил ёмкость конденсаторов вплоть до 1000 мкФ.
Бессмысленно. Ток потребления там мизерный, а большая емкость конденсатора плохо гасит высокочастотные пульсации.
roman.com писал(а): Пт июл 03, 2026 18:50:58 все-таки питание на аналоговую часть МК я бы тоже подал.
Это обязательно! Все выводы питания - обе пары VCC и GND, а так же AVCC должны быть запитаны обязательно! У автора это не сделано в разводке.
Последний раз редактировалось Rapra Пт июл 03, 2026 19:04:00, всего редактировалось 1 раз.
Друг Кота
Сообщения: 9339
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

Сообщение roman.com »

конденсаторы большой ёмкости подключаются к существующим в процессе поиска источника помех.
это в процессе отладки делается. а не на постоянной основе.

но в любом случае все начинается с нормально блока питания.
фиг его знает какие там помехи у дешевого китайского блока питания.
в малогабаритных блоках питания китайцы экономят конденсаторы и фильтры (дроссели). поэтому никто не знает что там за блок питания такой хитрый ))
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пн фев 16, 2026 17:30:02

Сообщение Rapra »

Бессмысленно. Конденсаторы большой емкости, особенно на 1000 мкФ, плохо работают с высокочастотными импульсами и малыми токами заряда/разряда. Такие импульсы поглощаются блокировочными мелкими на 0,1 - 0,47 мкФ, установленными поближе к месту фильтрации.

Тут ведь главное, что ДО ЭТОГО у автора не было проблем. А значит, на плате Ардуино было все правильно сделано.
Ответить

Вернуться в «Arduino»