Страница 14 из 18

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

Добавлено: Пт июл 03, 2026 13:12:19
Rapra
Так ведь эти дефайны будут сконцентрированы внутри уровня Hardware Abstraction Layer и дальше уже не пойдут. Дальше работаем с тем функционалом, который предоставляет уаовень HAL в всде оберток функций (методов, по терминологии плюсов).
С дуру можно конечно и член сломать, но вряд ли вы сами будете так нахрапом действовать

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

Добавлено: Пт июл 03, 2026 13:13:31
roman.com
дело больше не в токах, а в коэффициенте усиления усилителя.
и чем больше коэффициент усиления усилителя тем больше надо фильтров по питанию. больших и разных ))

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

Добавлено: Пт июл 03, 2026 13:14:32
roman.com
в схеме два светика. вывод 5 и 6.
значит программа мигалки буде такая.
PORTD = 0b00100000; // первый включить, второй выключить.
PORTD = 0b01000000; // первый выключить, второй включить.
получилась мигалка ))

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

а что там ещё есть ?
на работу усилителей программа не влияет.
есть ещё два светодиода... выводы 4 и 7.
значит надо переписать нашу программу ))

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

Добавлено: Пт июл 03, 2026 13:18:53
Rapra
А Рома не слышал про лог операции OR и AND?

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

Добавлено: Пт июл 03, 2026 13:31:04
Zapolyarny
Rapra писал(а): Пт июл 03, 2026 13:12:19 Так ведь эти дефайны будут сконцентрированы внутри уровня Hardware Abstraction Layer и дальше уже не пойдут.
А! Ясно. Тут вышла недосказанность с моей стороны - я не использую HAL. Использовал бы, предубеждений особых нет и считаю его удобным, но для ch32v он просто ужасен (Вы бы точно его создателей назвали нехорошими словами).

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

Добавлено: Пт июл 03, 2026 13:34:58
Zapolyarny
roman.com писал(а): Пт июл 03, 2026 13:13:31 и чем больше коэффициент усиления усилителя тем больше надо фильтров по питанию. больших и разных ))
А скажите (когда в очередной раз перепишете программу), если два каскада усилителя, то усиление помех как происходит? В соответствии с произведением коэффициентов или применительно к каждому, и если второе, то какой каскад более значим?

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

Добавлено: Пт июл 03, 2026 14:08:29
roman.com
Рома много чего слышал ))

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

PIND = 0b11110000; // выводы 4,5,6,7
PORTD = 0b00000000; // выводы 4,5,6,7
w(1){
PORTD = 0b00100000; // включить 5, выключить 6
PORTD = 0b01000000; // выключить 5, включить 6.
}

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

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

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

Добавлено: Пт июл 03, 2026 15:05:42
BOB51
Простой усилитель...
Посмотрим к примеру те же "стопы"...
Там минимум полосовой УНЧ с настройкой на несущую частоту излучателя, а не просто усилитель переменного сигнала...
Как такой выполнить - вариантов много встретить можно. Заодно и случайные помехи удавятся...
:roll:

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

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

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

Добавлено: Пт июл 03, 2026 16:39:59
Rapra
Да не надо там на каждый канал. Достаточно просто отделить аналоговую часть питания от цифровой. Там на плате дорожки питания на аналоговую часть проходят после питания микроконтроллера, а это и есть потенциальный источник проблем. В первом каскаде резистор от плюса питания как раз приходит на фотодиод, и как раз этот путь и является первым источником усиленной каскадами помехи. В исходной схеме этого резистора не было.

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

Добавлено: Пт июл 03, 2026 16:49:48
Massaraksh7
Rapra писал(а): Пт июл 03, 2026 16:39:59 В первом каскаде резистор от плюса питания как раз приходит на фотодиод, и как раз этот путь и является первым источником усиленной каскадами помехи. В исходной схеме этого резистора не было.
Это я потом поставил. Но, что с ним, что без него - не работало.

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

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

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

Добавлено: Пт июл 03, 2026 18:27:09
Massaraksh7
Сейчас, скорее всего, плату не буду переделывать, но на будущее вижу так:
a6.png
(234.01 КБ) 16 скачиваний
Можете покритиковать, восприму с благодарностью, единственно, разъём не хочу удалять, уж больно удобно с ним.

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

Добавлено: Пт июл 03, 2026 18:34:41
Massaraksh7
Massaraksh7 писал(а): Пт июл 03, 2026 18:27:09 разъём не хочу удалять
Хотя, можно его поближе к ножкам расположить
a7.png
(229.64 КБ) 11 скачиваний

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

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

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

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

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

а вообще я бы по два фильтра поставил.
так надежней ))

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

Добавлено: Пт июл 03, 2026 18:50:58
roman.com
все-таки питание на аналоговую часть МК я бы тоже подал. аналоговая часть кушать не простит )) пока АЦП программно выключен ток не меняется.
зато будет вторая земля для МК. ))
но это я.
как у других не знаю.

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

Добавлено: Пт июл 03, 2026 18:55:40
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 должны быть запитаны обязательно! У автора это не сделано в разводке.

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

Добавлено: Пт июл 03, 2026 19:01:46
roman.com
конденсаторы большой ёмкости подключаются к существующим в процессе поиска источника помех.
это в процессе отладки делается. а не на постоянной основе.

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

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

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

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