Skip to content

1. Week 01

This week I worked on making a noise-trafficlight for the classroom. noisetrafficlight

My noise-trafficlight

I decided to design a noise light using the Arduino Uno, LEDs and a microphone sensor. Such noise lights are often used in German schools. They are intended to signal the class when it gets too loud.

noisetrafficlight

I first built the noise light with a simple volume sensor, a ready-made traffic light module and the Arduino Uno. I use a MacBook for programming, which somewhat limits the options for using different programs. The easiest way to program is with the original Arduino IDE, which is what I used here. The program was relatively easy to write, and I later experimented with it a bit and also used other programming platforms. The original programming is that the ambient noise detected by the sensor is recorded in three levels, which are displayed on the traffic light in green, yellow and red. The sensor has a potentiometer to adjust the desired ambient noise.

The following tasks had to be solved:

  1. Correctly connecting the traffic light and the noise sensor. Since the circuit boards are labeled, no data sheets were needed and everything worked correctly straight away.

noisetrafficlight

  1. Recording the correct volume values. To do this, I had the volume values ​​output via the serial monitor. This allowed me to enter the approximate threshold values ​​required in the program, whereby the fine adjustment can be carried out via the potentiometer independently of the values ​​in the program.

Here is the code I created for the arduino-IDE:

double ___Noise;
int _input_Mikro = A0;
int _led_gelb = 12;
int _led_grun = 11;
int _led_rot = 13;
{
    Serial.begin(9600);
    pinMode(_input_Mikro, INPUT);
    pinMode(_led_gelb, OUTPUT);
    pinMode(_led_grun, OUTPUT);
    pinMode(_led_rot, OUTPUT);
    ___Noise = 0;
}

void loop()
{
    ___Noise = analogRead(_input_Mikro);
    Serial.println(___Noise);
    if ( ___Noise < 92 ) {
        digitalWrite(_led_gelb, HIGH);
        digitalWrite(_led_gelb, LOW);
        digitalWrite(_led_gelb, LOW);
        delay(50);
    } else {
        if ( ___Noise < 96 ) {
            digitalWrite(_led_gelb, LOW);
            digitalWrite(_led_gelb, HIGH);
            digitalWrite(_led_gelb, LOW);
            delay(50);
        } else {
            if ( ___Noise < 100 ) {
                digitalWrite(_led_gelb, LOW);
                digitalWrite(_led_gelb, LOW);
                digitalWrite(_led_gelb, HIGH);
                delay(50);
            }
        }
    }
}
  1. Recording the volume values ​​in the program. Here I created a variable that reads the value from the sensor. The programming worked immediately without any major difficulties, but I spent a long time programming the continuous transfer of the correct sensor values. This didn’t work at first: the value was only read in once and then not changed again.

Improvements and adjustments

I set myself the goal of using the Open-Roberta platform instead of the Arduino IDE. Unfortunately, I was unable to connect the Arduino board directly to Open-Roberta. An additional connector program was also unsuccessful, as my Arduino board was not recognized on the USB port.

I then proceeded as follows: 1. Simulate the connections in Open-Roberta.org 2. Program with the graphical program blocks 3. Display the underlying program code 4. Copy the program code to the clipboard 5. Paste the program code into the Arduino IDE 6. Transfer the code to the board.

This method ultimately worked well. For further improvements and changes, I used the simulation program Tinkercad. Here is the documentation:

noisetrafficlight

noisetrafficlight

In Tinkercad, I implemented another way to turn the traffic light on or off using an RGB LED and a switch. I also implemented a fourth noise level by making the red LED start flashing when the noise level reaches a certain level. The problem with Tinkercad is that there is no volume sensor. I used an LDR instead, which makes no difference to the simulation.

If you like to try my tinkercad-circuit, you find it here: TinkerCad Circuit

Reflecting questions

1. Did you bring several disciplines together in your own teaching? Do you collaborate with teachers in other disciplines? What are the opportunities and challenges.

In my own classes in the FabLab, different topics and subjects are addressed. Nevertheless, it is not really interdisciplinary work, because digital fabrication mainly teaches the content of the technology lessons. Of course, other subjects - e.g. mathematics or physics - are included in the work, but so far I have not really tried to work across disciplines, for example by including the artistic and musical field. The collaboration with colleagues from other disciplines focuses mainly on related subjects, such as physics or mathematics. Here, for example, we designed teaching materials together.

2. How do you envision a makerspace in your school? How does it look like? If you have one already, how would you modify it.

Our Makerspace is a single room located in the area where the technical rooms are located for technology lessons. In principle, we can also use the adjacent technical room, i.e. drills and hand tools are available there. The makerspace is a bit remote and can only be reached through an additional connecting door. The advantage of this is that the makerspace is well protected from vandalism or people who don’t belong there. On the other hand, it is not that easy to get in. If I could have chosen, a more centrally located room would certainly have been better. Additionally, it would have been good if the room was not the size of a classroom but significantly larger, so that it could be divided into different areas. The division into different areas does not necessarily work well in our smaller room, but we have already arranged the tools and machines according to different topics so that the students can stand at machine workstations in addition to the workstations. However, we benefit from the fact that we use a lot of mobile devices such as MacBooks or iPads, so the students can set up their own work areas wherever there is space. Another problem arises from the fact that machines that cause dust or dirt, such as the CNC milling machine or the laser skat, are also housed in the same room. We do have an air extraction system, but it is still not ideal to operate these devices together with computers in the same room. Overall, however, there is unfortunately no prospect of reserving a larger room or even an entire area of ​​the school for the fablab. We simply have far too little space in the school and the rooms are also needed for the many classes and students.

3. After the definiton of computational thinking: Are you somehow using computational thinking in your teaching? How? Do you think you can take advantage of computational thinking? How?

We use videos for our Fablab.. In these videos it is shown how you can produce something with a laser cut or with a 3-D printer. These videos are watched by the students and they then follow simple steps. In order to make this method more flexible, in the future we will only design the videos to show individual elements, for example how to make a moving connection, how to round something or how to extrude objects. The students would then have to combine these individual part videos for their own project in such a way that they can solve all the challenges in their project. In this way, the learning of the students would be more similar to computational learning. I think a lot of this method because you can then realise a whole variety of your own projects with very few learning videos. You no longer have to find a very specific procedure or a very specific solution for a task, but you can combine partial solutions with each other and put them together to create something completely new. In this sense, computational thinking is a very good option when working with students in the fablab and all students want to realize their own projects. This is much better than class lessons in which everyone does the same thing and everyone wants to achieve the same goal.