13. Output devices¶
This week we evaluate the output device with monitoring power consumption and made an output device of stepper motor control. Juha Pekka Mäkelä is an instructor who taught and guide how to use those devices and tools in Fablab Oulu.
1. Group assignment¶
We evaluated the power consumption of output device, this time is Liquid crystal display (LCD) with Arduino Uno.
LCD setup¶
The system is set up by LCD screen and Arduino Uno connecting by GPIO with I2C bus, following this Arduino guidance.
In display prepared three set up,
1. Full of character
2. Only one dot
3. Flashing a dot and full with 100mS period
USB multimeter measurement¶
We used commercial common USB type multimeter for the measurements.
We measured the power consumptions with varied parameters of these topics, 1. Character variations 2. Backlight On/Off 3. Contrast change (Maximum, Minimum)
Here is the summery.
- Character variations by Full or dot doesn’t make the change of power consumption. By flashing the letter made a slightly bigger consumption but it may be caused by Arduino side of processing power of loop’s.
- Backlight made a significant change for power consumption. It made a double number power consuming and quite big portion in the system.
- Contrast doesn’t change the power consumption at all.
Overall, if you want to reduce the power consumption on LCD, adjust the backlight properly. This can be applied for our daily use laptop PC especially when you use in battery operation mode.
Measurement | Backlight ON | Backlight OFF | BL OFF with Contrast change |
---|---|---|---|
Full Character | 0.108A | 0.056A | 0.056A |
Only one dot | 0.108A | 0.056A | 0.056A |
Flashing letters | 0.110A | 0.058A | 0.058A |
DC power analyser measurement¶
And we are instructed how to use the DC power analyzer in professional manner to check further details. The measurement result is almost same as this Arduino level power consumption but this is very useful tool for check with details with multiple proves.
DC5V for Arduino is provided from the probes.
Measurement can be seen with more details.
Power consumption is also varied with power source PWM.
2. Individual assignment¶
In individual assignment, I chose a stepper motor and its control. Stepper motor is also used in my final project, to rotate the wheels, this is a good exercise. And assets are given from mechanical + automation week’s dressing Pizza machine especially this stepper motor control part.
NEMA17 stepper motor¶
NEMA standard (NEMA ICS 16-2001) describes stepper motors, and NEMA 17 being a stepper motor with a 1.7 x 1.7 inch faceplate. This standardizes only the dimensions of faceplate and axis as the interface to machine, Depth, weight, torque, speed and etc are totally up to the motor’s specification. NEMA17 is widely used in industry especially for 3D printer, CNC router, liner actuators applications.
Here is the requirement of my exercise,
- PCB is set to the backplate of NEMA17 as a common platform physically.
- Provides stepper motor driver and power source connector.
- Connector interface to my main board of ESP32.
- Buttons and LEDs to control the motor manually.
PCB design¶
PCB design and production is followed by the same step of previous weeks’ and used KiCAD and LPKF.
Circuit layout, componets are referenced from Antti’s Pizza machine electronics, however, new things here is PCB production mechanical aspects.
- Drill hole dimension is from NEMA17 standard.
- Drill data for LPKF production.
Other CAD tool (this time Fusion 360) created .dxf file can be imported to KiCAD, Edge layer.
When you plot the file creating Gerber data, you can make the drill file for drilling places.
PCB production¶
I used the LPKF, it’s same way of week6 Electronics production but added following steps of additional drill data process.
When imported the Gerber files, added the drill files of *.drl. Here added two drill files of M3 screw holes and the power connector holes.
Modified the profile of drill data, changed the Tech to Mechanical and Phase to ContourRouting.
Assembly and verification¶
Here is the first iteration.
Problems :)
-
Physically the RC battery connector hits to NEMA motor because of through hole. And the connector connection is too much stiff, not easy to put/remove the connector. -> Better to replace just cable connection with soldering or use more simple power connector at this end.
-
Connection between main board and NEMA board, wrong pin assignment and cannot use the 8pin connector as its plan. -> use jumper cable or re-design.
-
Motor doesn’t work properly, not moving smooth. The details below.
Trouble shooting NEMA17 Driver¶
Used the sample code which provided in stepper motor tutorial. According to Antti when he made in Pizza machine, the rotation speed of 2000, 1000 micro-second couldn’t work well but 1700 then good movement. Same behave that I confirmed.
Back to basic, I confirmed that the assembled again using reference components without my own made PCB, using Arduino Micro, bread board and direct connections by jumper cables. Then this basic connection made correct operations of stepper motor, so something wrong on my own board.
Uploading the file to Arduino Micro without bootloader, you can do with choosing Arduino Pro or Pro Mini at the board selection of Arduino IDE.
Findings,
- Replaced from my main board of ESP32 to Arduino Micro, same behaviors. -> Main board is OK
- Replaced from my stepper motor board to bread board direct connection, behavior became correct operation. -> Problem was on the stepper driver board.
- The difference of board circuit diagrams and direct connection, Pin #9 (active low) of “EN” was no connection (NC) on the diagram also in PCB. And another issue was found that less soldering loose connection of SMT connector on the board.
After fixed the soldering failure on the SMT connector and made connection of pin #9 to GND (dirty job through…), motor operation problem was solved and move smoothly.
All done!
Mess cabling as proto but the function is verified in this week. Next modification can be used in my final project.
Reflection¶
- Check the electrical connection of each electronics line using multimeter especially for SMT connector components. Even solder is there but just on top of the pin, check carefully the solder is in between the pin and pad of PCB.
- Check the data sheet carefully about low active, high active, doubt NC is really NC or not.
Used files¶
- Group work Arduino codes
- NEMA17 front plate CAD layout
- NEMA17 stepper driver PCB files
- NEMA17 Arduino test codes