Welcome,
i am designing a draft measurer for a central heating cooker that allows remote control of the ash cover via wifi, I am using an ESP8266 12e as the control unit.
The design includes an AUTO mode, which will adjust the cooker draft based on the temperature (ds18b20 sensor). In addition, a 16x2 LCD display with HD44780 converter is hooked up to the whole thing.
Everything is working correctly, but I have a problem with sending the appropriate signal to control the servo (TOWER PRO MG90S) - at the moment, after connecting the servo "goes crazy right and left". Most likely the problem lies in hardware rather than software, as the servo runs on 4.8-6v (electronicoscaldas.com/datasheet/MG90S_Tower-Pro.pdf) while the ESP runs on 3.3V. Due to the fact that I am not an electronics engineer and do not have measurement equipment I am not really able to deal with this problem.
On the diagrams below I have presented a fragment of the circuit, which is responsible for the part related to the servo. At the same time I would like to point out that the whole thing is connected to the MB102 power supply module - the arduino on the diagram acts as a placeholder
I planted a NodeMCU on the ESP and tried sending the signal to the servo in 2 ways:
- by setting an alarm every 20ms (obtaining a frequency of 50Hz) with a change of state of one of the gpio outputs (based on: roboremo.com/esp8266-servo.html)
- by using pwm - pwm.setup(5, 50, 76) pwm.start(5) ... (based on: electronics.stackexchange.com/questions/233214/controlling-servo-motor-sg90-from-nodemcu-1-0-development-kit)
Regardless of the method, the servo still chases like crazy right and left.
In addition to connecting the servo as in the diagram above, I also tried additionally connecting GPIO_14 to the 3v3 supply via a 2K resistor.
I read and searched and came across some more suggestions for using an npn transistor (to invert the signal?), but nowhere could I find any information that I could digest on how such a transistor could be incorporated into my circuit.
If anyone would like to take a look at my case and give some factual advice I would be much obliged.
i am designing a draft measurer for a central heating cooker that allows remote control of the ash cover via wifi, I am using an ESP8266 12e as the control unit.
The design includes an AUTO mode, which will adjust the cooker draft based on the temperature (ds18b20 sensor). In addition, a 16x2 LCD display with HD44780 converter is hooked up to the whole thing.
Everything is working correctly, but I have a problem with sending the appropriate signal to control the servo (TOWER PRO MG90S) - at the moment, after connecting the servo "goes crazy right and left". Most likely the problem lies in hardware rather than software, as the servo runs on 4.8-6v (electronicoscaldas.com/datasheet/MG90S_Tower-Pro.pdf) while the ESP runs on 3.3V. Due to the fact that I am not an electronics engineer and do not have measurement equipment I am not really able to deal with this problem.
On the diagrams below I have presented a fragment of the circuit, which is responsible for the part related to the servo. At the same time I would like to point out that the whole thing is connected to the MB102 power supply module - the arduino on the diagram acts as a placeholder
I planted a NodeMCU on the ESP and tried sending the signal to the servo in 2 ways:
- by setting an alarm every 20ms (obtaining a frequency of 50Hz) with a change of state of one of the gpio outputs (based on: roboremo.com/esp8266-servo.html)
- by using pwm - pwm.setup(5, 50, 76) pwm.start(5) ... (based on: electronics.stackexchange.com/questions/233214/controlling-servo-motor-sg90-from-nodemcu-1-0-development-kit)
Regardless of the method, the servo still chases like crazy right and left.
In addition to connecting the servo as in the diagram above, I also tried additionally connecting GPIO_14 to the 3v3 supply via a 2K resistor.
I read and searched and came across some more suggestions for using an npn transistor (to invert the signal?), but nowhere could I find any information that I could digest on how such a transistor could be incorporated into my circuit.
If anyone would like to take a look at my case and give some factual advice I would be much obliged.