![]() |
![]() |
#911 |
Junior Member
Регистрация: 07.11.2018
Сообщений: 11
Вес репутации: 0 ![]() |
![]()
Нужен какраз с термодатчиком. Иначе легче бы было просто купить.)
|
![]() |
![]() |
![]() |
#912 |
Junior Member
Регистрация: 07.11.2018
Сообщений: 11
Вес репутации: 0 ![]() |
![]()
Я правильно понимаю, что мне просто надо выдавать значение функции analogWrite?
Примерно так? void loop() { analogWrite(Pin, *значение от 0 до 255*); } |
![]() |
![]() |
![]() |
#913 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Для предложного мной способа нужен только цифровой сигнал low-high
|
![]() |
![]() |
![]() |
#914 |
Junior Member
Регистрация: 07.11.2018
Сообщений: 11
Вес репутации: 0 ![]() |
![]()
В итоге у меня 2 варианта получилось:
1) Выдает ШИМ, и вроде бы подходит, но тестер выводит что то не понятное(то 108 вольт то 220 при значении 255) Развернуть для просмотраvoid loop() { analogWrite(Pin, *значение от 0 до 255*); } [свернуть] 2) попробовал Ваш способ: Развернуть для просмотраint dimmer_vol = 0; //Время срабарывания пина void loop(){ dimmer(); } int dimmer() { if (millis() - lasttime > dimmer_vol) { analogWrite(ledPin, HIGH); } [свернуть] Но не понимаю, правильно ли он работает... осцилографа у меня нет. Последний раз редактировалось hoiho; 12.11.2018 в 17:17. |
![]() |
![]() |
![]() |
#915 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
ШИМ не будет работать.
Если установлен оптрон с детектором ноля, то у Вас только 1 способ, который я описал выше |
![]() |
![]() |
![]() |
#916 | |
Junior Member
Регистрация: 07.11.2018
Сообщений: 11
Вес репутации: 0 ![]() |
![]() Цитата:
Развернуть для просмотраint dimmer_vol = 0; //Время срабарывания пина void loop(){ dimmer(); } int dimmer() { if (millis() - lasttime > dimmer_vol) { analogWrite(ledPin, HIGH); } [свернуть] |
|
![]() |
![]() |
![]() |
#917 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
При чем тут analogWrite(ledPin, HIGH)?
|
![]() |
![]() |
![]() |
#918 |
Junior Member
Регистрация: 07.11.2018
Сообщений: 11
Вес репутации: 0 ![]() |
![]() |
![]() |
![]() |
![]() |
#919 | |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Можно взять библиотеку PID и пример для реле
PIDЦитата:
[свернуть] |
|
![]() |
![]() |
![]() |
#920 |
Junior Member
Регистрация: 07.11.2018
Сообщений: 11
Вес репутации: 0 ![]() |
![]()
На самом деле, похоже, у меня нет правильного понимания принципа работы данного способа. Я пытаюсь резать полупериод, а надо пропускать полупериоды.
Правильно будет, если за отрезок 100% я возьму 0.5 секунды? или нужно больше? И самое главное: может легче использовать диммер без детектора нуля, но с каким либо сетевым фильтром или стабилизатором? Последний раз редактировалось hoiho; 14.11.2018 в 10:10. |
![]() |
![]() |
![]() |
Здесь присутствуют: 11 (пользователей: 0 , гостей: 11) | |
|
|