Introduction: Window Actuator

Problem description:

In the most US buildings, air conditioning systems are used to control the temperature in the rooms, in the winter as well as in the summer. In theory, this is a really good system. But the real-life applications show, like for exemple in the Jayhawk Towers, one of the on-campus dorms of the KU, that the systems often don’t work as expected. Either the overall temperature of an apartment doesn’t fit the desired value, or the differences between several of its rooms are significant. Additionally, the quality of the air, mainly defined by its oxygen-level, can reach quite low levels. At last, the energy consumption of air conditioning systems is also high.

In many other countries like for example Germany, airing the rooms by opening/closing the windows is widely spreaded to exchange the air and change the temperature. This has the advantage, that the energy consumption is a lot smaller and the average oxygen-levels are higher.

Therefore, airing could also be used in the Jayhawk Towers to improve the room environment. Unfortunately, the windows of the dorm can only be open/closed manually. This is quite inconvenient for students, which are often studying in the university the full day. Especially in the spring/autumn months when the weather changes really quick within a day in the mid-west, an automated mechanism would be a real advantage.

 

Project Description:

To solve the previous described problem, an automated window opener/closer is developed and built. It consists of:

-       Arduino Board as controller

-       Actuator with an electric motor (and eventually transmission system)

-       Temperature sensor

-       CO2 sensor

-       WIFI module for Internet connectivity

It’s prohibited by the housing department to change anything at the windows. It’s also not possible to install any rain/temperature sensors outside the window due to the insect screens, which are forbidden to be removed. Therefore, also the connection to online services is needed to gain information about the current and future weather.

With this setup, a remote supervision and control of the room/window state is possible. The actor can be either manually actuated via the Internet, in predefined time slots or automatically to reach the defined target (Figure 2).

The current status of the actuator (open/closed), the room temperature, and the CO2 level can be supervised in the web application. 


Specialties of the Project:

The following points make this project unique:

-       Usage of WIFI connection board (or internet-enabled Arduino board)

-       Creation of web interface

-       Compact combination of actuator, controller and sensors

-       Usage of gas sensor

 

Manually Opener (current state):

See Figure 2, Figure 3 with removed handle/attachment screws

Supplies

The needed parts are listed in the uploaded list. The available column states the part, which I had to purchase (or not) for the project. Prices can vary. To read the full links for the Step files and the shops, check out the attached PDF file.


Additional, several parts were 3D printed. All were printed out of ABS in different colours due to the availability in the 3D-printing shop of the university. The Step files for the overall 16 parts are added below. The parts 'Toothing_Test' and the two 'Adapters' aren't used in the final actuator. Their purpose is explained in the steps below. The complete CAD assembly can be provided if requested.

Step 1: Needed Torque/Power and Motor Selection

The first step was to gain an idea, how much torque/power the actuator has to provide. Thus, several objects were mounted at the handle of the opener. As can be seen, a 12 OZ beer can seemed to have the perfect mass. Together with the measured leverage of 6 cm, the needed torque could be calculated.

With this information, the right motor could be choosen. At first, the idea was to use it without the help of a transmission. Quite quick a stepper motor as used in 3D printers seemed the best choice for the task. The only difficulty was finding complete datasheets. In the most cases, only the holding torque of the motors is stated, but not the 'dynamic torque', which is usually lower. Therefore, a motor with a holding torque of 0.4 Nm and a supply voltage of 4.85 V was choosen.

Step 2: Examining Adapter Sizes

To connect the motor with the opener, an adapter should be manufactured. Unfortunately, the toothing of the opener can't be measured with the available tools. So to provide a tight connection, a sample with several toothing sizes and also several conncetion sizes to the motor shaft was designed and printed. After finding the perfect pairing, two adapters were printed to connect the motor with the opener for the firsrt time. All three Step files are attached above.

Step 3: Direct Motor Connection (a Huge Disappointment)

As mentioned above, the motor was connected in the next step with the opener. Unfortunately and due to to the lack of knowledge about it's real dynamic torque, the motor wasn't strong enough to open/close the window alone.

Step 4: Design of Planetary Gearbox in KissSoft

To increase the torque of the motor, a transmisson was needed. The choice fell on a planetary gearbox, due to the limited space and it's characteristic to allow a coaxial torque conversion. At first, some basic calculations were done in Excel. With that, a first idea was born how the configuration of the gearbox could look like. The further calcluations especially of the geometry were done in KissSoft, a widely spread gearbox development tool in Europe. With its help a gear configuration could be found, so that the ring gear fits the diameter of the motor smoothly and could therefore be integrated in the motor holder (see calculation output script below). A major taks hereby was the avoidance of gear mesh faults due to the low teeth numbers of the sun and the planets, which are below 17 and therefore result in massive undercuts in the flank geometry. The geometries of the gears could be exported out of the softare as step files. The final gearbox has a ratio of 4.09. It must be noted that the focus of the calculations was mainly to define some proper tooth geometries, less to calculate the durability precisely!

Attachments

Step 5: Designing in Solidworks 2022

The actuator was fully designed in Solidworks, using several 3D printed parts to provide attachment points for the electrics, cover the wiring or carry the torque of the gearbox/motor to the window frame. The main focus was to get a design which provides good maintainability (important for a prototype as this projet is) while at the same time being as compact as possible.

Step 6: Circuit Diagramm in Fritzing

As software to create the electrical circuit, Fritzing was used. It has the advantage, that it allows the easy integration of new parts into the diagram. As main connection point a half-sized breadboard was used, which is located at the bottom of the actuator. A specialty of this project is the power supply of the components. Two 9V Alkaline batteries are used, which are set up in parallel. One supplies the first DC-DC buck converter, which reduces the voltage to 4.85 V. With that the gas sensor (draws up to 100 mA, which is to much for the arduino supplyI) and the motor is supplied. The other battery supplies the arduino (and the attached tempsensors and the RGB) as well as the second converter. This reduces the voltage to 3.3 V, with which the ESP 8266 and the low voltage side of the logic level converter are fed. The seperation in two batteries was choosen due to the concern, that the operation motor draws to much current (up to 0.8 A), and thus the voltage drops too much, so that the arduino/ESP aren't running properly anymore.

Step 7: Setting Up the Website - Firebase

To control the actuator remotely, an internet connection must be set up. Unfortunately, common services like Arduino-Cloud or similar services from Adafruit, ... aren't sufficient for this kind of project.This services just provide a one-way connection, which allows to display sensor values on a website. But it's not possible to insert any data and create a 'two-way' connection. Therefore, a self-made solution is needed. Due to my lack in html/javascript, I tried to setup a realtimedatabase over Firebase. With the integer 1 (or 0) which can be seen in the picture above, the rotation of the actuator can be controlled via Internet.

https://console.firebase.google.com/project/intelligent-window-actuator/database/intelligent-window-actuator-default-rtdb/data

Step 8: Programm the Actuators

To program the ESP, it is flashed over the Arduino board it is connected to. The complete process is described under: https://tttapa.github.io/Pages/Arduino/ESP8266/Flashing/Flashing-With-an-Arduino.html.

The necessary circuit with a button for resetting/programming are already integrated into the actuator. Thus, only the reset pin of the Arduino has ti be grounded to flash the ESP. If this isn't done, the Arduino is normally programmable over a USB. For both microcontrollers, an own VS Code project is set up. The majority of programming/calculations is done on the Arduino, the ESP is just used as a Web server to receive/send data. The code is published under the following Github repository: https://github.com/svmuecke/Window_Actuator. The zip-file contains two repos, one for each microcontroller.

Step 9: Assembly

After all parts are printed, the actuator can be assembled.

Step 10: Putting Into Operation & Testing, Testing, Testing

And finally, the actuator can be put in operation. Therefore, firstly the single components are checked for their operationality, before the full system is be started. At the current time, this process is still being done. In the testing period, the covers aren't mounted to allow an easier access. At first, the actuator is activated over the PC, showing that even with the added gearbox the torque isn't sufficient. Besides from that, first a LED was controlled over Firebase, as can be seen on the video attached below. The combination of both was also done. Unfortunately, the actuator broke 10 min before the final presentation, thus a video of that couldn't be filmed.