This one is the biggest AC Dimmer, we have now. It’s just like the other 2 variations but has 4 channels. So all of your lamps, elements, fans, etc can be connected here in 1 device. And it will smoothly change the light brightness, turn ON/OFF electronic devices at the rate you want.
In the tutorial, you can see a simple example of what can be done with it.
Check out other options:
Download link: https://github.com/RobotDynOfficial/RBDDimmer
Connection table:
Board | INPUT Pin Zero Cross |
OUTPUT Pin | ||
Leonardo | D7 (NOT CHANGEABLE) | D0-D6, D8-D13 | ||
Mega | D2 (NOT CHANGEABLE) | D0-D1, D3-D70 | ||
UNO NANO |
D2 (NOT CHANGEABLE) | D0-D1, D3-D20 | ||
ESP8266 |
|
|
|
|
ESP32 |
|
|
|
|
Arduino M0 Arduino Zero |
D7 (NOT CHANGABLE) | D0-D6, D8-D13 | ||
Arduino Due | D0-D53 | D0-D53 | ||
STM32 Black Pill Blue Pill Etc... |
PA0-PA15, PB0-PB15 PC13-PC15 |
PA0-PA15, PB0-PB15 PC13-PC15 |
This library can simplify user code with the following functions:
1. Function dimmerLamp - this function initializes the number of operating pin and is defined by the user Example: a.dimmerLamp dimmer(4); dimmer output DIM/PSM is initialized on the pin 4 for the bords WITHOUT changable ZERO-CROSS input pin (AVR, Arduino M0/Zero) b.dimmerLamp dimmer(4, 2); dimmer output DIM/PSM is initialized on the pin 4 and zero-cross initialized on pin 2. Only for boards whith changable zero-cross(ESP32, ESP8266, Arduino Due) 2. Function begin port initialization, timer and external interrupt from zero-cross. Example: dimmer.begin(NORMAL_MODE, ON/OFF); port initialization, work mode choice, ON/OFF. Parameter 1: dimmer working modes consist of two choices - NORMAL_MODE and TOGGLE_MODE a. NORMAL_MODE to make dimmer work in defined value from 0 to 100 (%) (integer) Example of this mode located in \RBDdimmer\examples\SimpleDimmer b. TOGGLE_MODE smooth change of dimming value up or down in a defined range. This solutions implies change of dimming values by means of hardware timer, without using the cycle code. Example of this mode located in \RBDdimmer\examples\SimpleToggleDimmer Parameter 2: ON/OFF. a. ON - turns timer ON, allows to use dimmer. b. OFF - turns timer parameters OFF, prevents the use of dimmer. 3. Function setPower sets dimming value from 0 to 100% Example: dimmer.setPower(90); 4. Function getPower to display current dimming value Example: Serial.print(dimmer.getPower()); Result 0~100 int 5. Function setMode sets and changes the work mode (NORMAL_MODE and TOGGLE_MODE) dimmer.setMode(NORMAL_MODE/TOGGLE_MODE) 6. Function getMode displays values of current work mode Example: Serial.print(dimmer.getPower()); Result 0 (NORMAL_MODE) or 1 (TOGGLE_MODE) 7. Function setState sets dimming state ON/OFF Example: dimmer.setState(ON); delay(100); dimmer.setState(OFF); 8. Function getState displays current state of dimmer Serial.print(dimmer.getState()); Result 0 (OFF) or 1 (ON) 9. Function changeState changes dimmer state to the opposite one Пример dimmer.setState(ON); delay(100); dimmer.changeState; delay(100); 10. Function toggleSettings smooth change of dimming value up or down in a defined range Example located in \RBDdimmer\examples\SimpleToggleDimmer
Specification:
Power |
up to 10A-600V / 4A-400V per channel) |
AC frequency |
50/60 Hz |
TRIAC |
BTA16/BT168 |
Isolation |
Optocoupler |
Logic level |
3.3V/5V |
Zero point |
Logic level |
Modulation (PSM) |
dimming 0~100% |
Signal current |
>10mA to channel |
Environment: |
|
ROHS3 |
Compliant |
Power | 16A/4A |
AC frequency | 50/60 Hz |
TRIAC | BTA16 - 600B |
Isolation | Optocoupler |
Logic level | 3.3V/5V |
Zero point | Logic level |
Modulation (PWM with trigger) | logic level ON/OFF TRIAC |
Signal current | >10mA |
Environment: |
|
Operating humidity | Dry environment only |
ROHS3 | Compliant |
Libraries for Leonardo, Mega, UNO, ESP8266, ESP32, Arduino M0, Arduino Zero, Arduino Due |
![]() |