Content:
- Reviewing of proposal with teachers
- Improving on ideas/ creation of new ideas
Process;
We first met the teachers to discuss on the proposal that we had submitted earlier. Our first proposal was to create a UV clock. The idea stemmed from the the luminescent property of fluorescent paint under the exposure of ultraviolet light. Fluorescent paint, under the exposure of UV light, will continue to exhibit glowing properties for a period of time even after the removal of the UV light. We wanted to harness this effect to create a more energy efficient clock and a better clock display. We believed that although UV LEDs were less energy efficient than LEDs found in most digital clocks today, our design of using less UV LEDs to 'write' the time and the lack of need for constant energy supply to the LEDs would reduce overall energy consumption. Granted, the use of the Raspberry Pi and and the mechanisms within the clock would also take up energy, but we believed that if this first trial was to work, we could create a UV clock with a circuit board that would cut down on further energy consumption. We also believed that the display of the UV clock would be far better than that of those in the current market. Mechanical clocks cannot be read in the dark and digital clocks require more LEDs and constant power supply to keep the LEDs lit. Aside from the technical advantage we believe the UV clock could hold over the other clocks present today, we were also fascinated with the interaction between UV light and fluorescent. There has been little research about such an interaction and little trials to incoporate such an effect into daily life and hence we also wanted to, during the course of our project, research and hopefully shine some light onto the issue. We also gave our project a high level of difficulty as it required first, the research and understanding of the glowing effect, and second, the programming skills such as that of x and y axis positional to move the LEDs to 'write'. Our idea got rejected and we then had a difficult time trying to think of another one.
Reflection:
Sadly, our idea got rejected. The teachers wanted us to prove with calculations the energy consumption of the UV clock against that of the digital clock. As the information on the internet is too little, we were unable to do so. Whereas, we treated the project as an opportunity to learn and experience, and wanted to test the energy consumption after it was completed to see if our hypothesis was true, the teachers wanted a useful product and wanted us to first prove that our hypothesis was true before carrying it out. We also wanted to use the project to conduct a first prototype and test the viability of using the UV-fluorescent interaction, focusing on the energy consumption less as the Pi could simply be replaced by a circuit board. However, the teachers did not agree with such a stand and wanted a final product to surface from this project. Hence, due to the many difficulties, we had to do away with the project with think of another one.
Personal Development:
The rejection of our proposal taught me that life is not always smooth sailing. However, if I have the will to learn, I should explore and experiment on my own even outside the school. The school offers us some financial aid but nonetheless some things can be done without much money. It helped me to most importantly understand the school in terms of the things they look out for in the project of the students and this will not only help me in the later proposals but through my remaining school life too.
Saturday, 26 March 2016
Arduino Workshop Lesson 2 18 March 2016
Content:
- Setting up of LED to appear and disappear in a line
- Adding a buzzer to play sounds in sync with light
- Building of own project
Process:
It was the second lesson of our Arduino workshop and our first task was to light up a row of LED such that it would seem like the light was travelling in a line down the LEDs. This would require that all the LEDs be off as the next on is turned on and so on. This is a relatively simple task that we could complete using the delay function. The next task, however, was to involve the buzzer into the set-up such that a note would be played as the light switched from one LED to another. The main difficulty here was to synchronise the playing of the note with the lighting of the LED. For this, we were unable to complete the task until we figured out how to use an array. Finally, we were able to complete the task after lots of hard work.
The result of our hard work:
The second segment of our day was for us to embark on our own projects. We were allowed to think of our own ideas and to work it out. My group worked on two projects, a reaction time timer and a dice. Unfortunately, both of them did not work our very well but in the process, we had to be extremely determined and we learnt alot through the web and trial and error. Trying to complete our own projects trained us to think deep and concentrate well.
We also explored the other components in our Arduino kit and tried to make them work. One of the examples was the LCD. The wiring of the LCD was extremely complicated and we had to follow examples from the internet to make it work. We had to be extremely focused and meticulous as we could not even attach one of the wires wrongly without making the set up not work. After a long long time and several retries:
- Setting up of LED to appear and disappear in a line
- Adding a buzzer to play sounds in sync with light
- Building of own project
Process:
It was the second lesson of our Arduino workshop and our first task was to light up a row of LED such that it would seem like the light was travelling in a line down the LEDs. This would require that all the LEDs be off as the next on is turned on and so on. This is a relatively simple task that we could complete using the delay function. The next task, however, was to involve the buzzer into the set-up such that a note would be played as the light switched from one LED to another. The main difficulty here was to synchronise the playing of the note with the lighting of the LED. For this, we were unable to complete the task until we figured out how to use an array. Finally, we were able to complete the task after lots of hard work.
The result of our hard work:
The second segment of our day was for us to embark on our own projects. We were allowed to think of our own ideas and to work it out. My group worked on two projects, a reaction time timer and a dice. Unfortunately, both of them did not work our very well but in the process, we had to be extremely determined and we learnt alot through the web and trial and error. Trying to complete our own projects trained us to think deep and concentrate well.
We also explored the other components in our Arduino kit and tried to make them work. One of the examples was the LCD. The wiring of the LCD was extremely complicated and we had to follow examples from the internet to make it work. We had to be extremely focused and meticulous as we could not even attach one of the wires wrongly without making the set up not work. After a long long time and several retries:
Reflection:
The objective of this course and the embarking on a self project, to me, was to teach us the value of determination and the will to learn and succeed. Success is the derivative of your hard work. It does not come easy and it only goes to those who toil and work effectively. I also realised the wide array of learning possibilities found in the internet. We are extremely blessed with the internet today as it empowers us with the opportunity to learn. As long as we have a will to learn, we can always do so with the internet. I will use the internet much more not just to further my learning for Arduino but in all aspects of learning as well.
Personal Experience:
Not just was this course beneficial to me technically, it built my character as well. I made me realise the important of hard work and the will to learn. From now on I will strive to work harder in all aspects of my learning and life. I also gained more understanding of the different functions in Arduino and understood the importance of determination as a programmer.
Arduino Workshop Lesson 1 on 11 March 2016
Content:
- Introduction to Arduino
- Setting up of hardware and software
- Delay and millis function
Process:
It was the first day of our Arduino course and as beginners interacting with the Arduino, we were first given an introduction about the capabilities of Arduino, the set-up of the Arduino, and how to use to Arduino. We first embarked on a small task, which was to set-up one blinking LED. To do this, we were required to understand how to set a circuit up and the workings of the bread board. We had to understand the sequence of the breadboard, the pins on the Arduino, and had to use a resistor to avoid burning out the LED. We then had to tackle to software aspect of the task. We were introduced to the logic behind the Arduino programme which runs on the C programming language, relatively new to the most of us. However with the instruction of the trainers, we were able to complete the basic task while gaining some minute understanding of the programming language.
The next task we had was to send out the SOS signal with the blinking of the LED. The signal consists of 3 short taps, 3 long taps, followed by a final 3 short taps.. This task was not difficult and we were able to solve it easily using the delay function. The next part however, was much more difficult. The trainer required us to use the millis function as an alternative method to avoid some drawbacks of the delay function. Although not needed on this task, he wanted us to practise using it. The drawback of the delay function was that it would stop the whole Arduino from functioning for the set period of time. While the delay function was in effect, the Arduino would not be able to work on anything else. On the other hand, the millis function keeps track of time instead of stopping the Arduino for a period of time. Using the millis function, we would be able to set the Arduino to light up at certain instances in time without compromising other programmes running on the Arduino. With some difficulty, we were eventually able to complete the task, learning an important function in the process.
Reflection:
I am very glad that we were given the opportunity to pick up this course. Arduino holds alot of capabilities and possibilities, and it is not too hard for us to pick one up and experiment ourselves. Arduino however, would require me to pick up a new programming language, which although time-costly, will improve my overall programming flexibility and knowledge. I am interested in exploring and learning more about the Arduino and I might consider purchasing one to experiment on and embark on several self learning projects. I am very excited for the next Arduino workshop where we would be allowed to conduct some of our own projects. During the week in between, I would self-learn more of the C syntax which can help me during the next lesson.
Personal Development:
Personally, I have only heard of Arduino but not tried it out. This lesson was my first experience in handling and using the Arduino. I actually enjoy what I have attempted so far and am willing to get more of such opportunities. I would also start to learn more different programming languages so as to improve myself and my capabilities in different areas of computing. Personally, I enjoyed the trainers' methods of conducting the workshop. There was little guidance from him which encouraged us to think and solve problems on our own. The sense of achievement from completing a task, besides the knowledge we have gained, made the first lesson of the workshop extremely enjoyable.
About Arduino
Arduino is an open-source platform used for building electronics projects. Arduino consists of both a physical programmable circuit board (often referred to as a microcontroller) and a piece of software, or IDE (Integrated Development Environment) that runs on your computer, used to write and upload computer code to the physical board.
The Arduino platform has become quite popular with people just starting out with electronics, and for good reason. Unlike most previous programmable circuit boards, the Arduino does not need a separate piece of hardware (called a programmer) in order to load new code onto the board – you can simply use a USB cable. Additionally, the Arduino IDE uses a simplified version of C++, making it easier to learn to program. Finally, Arduino provides a standard form factor that breaks out the functions of the micro-controller into a more accessible package.
- Introduction to Arduino
- Setting up of hardware and software
- Delay and millis function
Process:
It was the first day of our Arduino course and as beginners interacting with the Arduino, we were first given an introduction about the capabilities of Arduino, the set-up of the Arduino, and how to use to Arduino. We first embarked on a small task, which was to set-up one blinking LED. To do this, we were required to understand how to set a circuit up and the workings of the bread board. We had to understand the sequence of the breadboard, the pins on the Arduino, and had to use a resistor to avoid burning out the LED. We then had to tackle to software aspect of the task. We were introduced to the logic behind the Arduino programme which runs on the C programming language, relatively new to the most of us. However with the instruction of the trainers, we were able to complete the basic task while gaining some minute understanding of the programming language.
The next task we had was to send out the SOS signal with the blinking of the LED. The signal consists of 3 short taps, 3 long taps, followed by a final 3 short taps.. This task was not difficult and we were able to solve it easily using the delay function. The next part however, was much more difficult. The trainer required us to use the millis function as an alternative method to avoid some drawbacks of the delay function. Although not needed on this task, he wanted us to practise using it. The drawback of the delay function was that it would stop the whole Arduino from functioning for the set period of time. While the delay function was in effect, the Arduino would not be able to work on anything else. On the other hand, the millis function keeps track of time instead of stopping the Arduino for a period of time. Using the millis function, we would be able to set the Arduino to light up at certain instances in time without compromising other programmes running on the Arduino. With some difficulty, we were eventually able to complete the task, learning an important function in the process.
Reflection:
I am very glad that we were given the opportunity to pick up this course. Arduino holds alot of capabilities and possibilities, and it is not too hard for us to pick one up and experiment ourselves. Arduino however, would require me to pick up a new programming language, which although time-costly, will improve my overall programming flexibility and knowledge. I am interested in exploring and learning more about the Arduino and I might consider purchasing one to experiment on and embark on several self learning projects. I am very excited for the next Arduino workshop where we would be allowed to conduct some of our own projects. During the week in between, I would self-learn more of the C syntax which can help me during the next lesson.
Personal Development:
Personally, I have only heard of Arduino but not tried it out. This lesson was my first experience in handling and using the Arduino. I actually enjoy what I have attempted so far and am willing to get more of such opportunities. I would also start to learn more different programming languages so as to improve myself and my capabilities in different areas of computing. Personally, I enjoyed the trainers' methods of conducting the workshop. There was little guidance from him which encouraged us to think and solve problems on our own. The sense of achievement from completing a task, besides the knowledge we have gained, made the first lesson of the workshop extremely enjoyable.
About Arduino
Arduino is an open-source platform used for building electronics projects. Arduino consists of both a physical programmable circuit board (often referred to as a microcontroller) and a piece of software, or IDE (Integrated Development Environment) that runs on your computer, used to write and upload computer code to the physical board.
The Arduino platform has become quite popular with people just starting out with electronics, and for good reason. Unlike most previous programmable circuit boards, the Arduino does not need a separate piece of hardware (called a programmer) in order to load new code onto the board – you can simply use a USB cable. Additionally, the Arduino IDE uses a simplified version of C++, making it easier to learn to program. Finally, Arduino provides a standard form factor that breaks out the functions of the micro-controller into a more accessible package.
Wednesday, 2 March 2016
Log for 3 March 16
Content:
- We learnt how to check our IP address ( ipconfig, ifconfig)
- Learnt how to use PuTTy to programme Pi with laptop over server (SSH)
- Raspberry Pi terminal basic commands
Process:
Each group SSH-ed one laptop to their Pi using Mr Zhou's router using PuTTy. However, many did not work due to the IP addresses given out to the Pi. This failure might be able to prove helpful in the future when troubleshooting etc. The non-working IP addresses given out by the router was an issue that we faced and I personally wonder how this can be solved or avoided so that this issue will not be faced again in the future.
Reason:
Being able to SSH provides alot of flexibility to us when working at home and outside. Without SSH, we would only be able to make use of the Pi bu attaching it to a monitor, keyboard, mouse, etc. This is extremely inconvenient, restricting us to doing it at home, and many of us do not have the hardware ourselves. With SSH, we will still be able to control the Pi through our laptop wherever we are, without any hardware. This is extremely convenient and the skill is directly applicable and important for the near future when we bring our Pi home etc.
Personal Development:
Each group SSH-ed one laptop to their Pi using Mr Zhou's router using PuTTy. However, many did not work due to the IP addresses given out to the Pi. This failure might be able to prove helpful in the future when troubleshooting etc. The non-working IP addresses given out by the router was an issue that we faced and I personally wonder how this can be solved or avoided so that this issue will not be faced again in the future.
Reason:
Being able to SSH provides alot of flexibility to us when working at home and outside. Without SSH, we would only be able to make use of the Pi bu attaching it to a monitor, keyboard, mouse, etc. This is extremely inconvenient, restricting us to doing it at home, and many of us do not have the hardware ourselves. With SSH, we will still be able to control the Pi through our laptop wherever we are, without any hardware. This is extremely convenient and the skill is directly applicable and important for the near future when we bring our Pi home etc.
Personal Development:
Today was a very short lesson. I was introduced to SSH which I had not known before. I feel like it can be a valuable tool that can help me in many aspects in the future and not just interacting with the Pi the near future. I look forward to be able to explore the wide array of capabilities that SSH can bring. I also got to revise some of the basic terminal commands which I have already known. I was also exposed to binary because of the IP address incident, and this turned out to be a blessing in disguise as I eventually learnt how to read binary, The internet is a wide library of knowledge and I believe that being able to harness and make use of it effectively is as important as any other skill. We are blessed with such an opportunity to learn and I feel that we ourselves should strive to learn independently.
About PuTTy
PuTTY is a free SSH, Telnet and Rlogin client for 32-bit Windows systems.
SSH, Telnet and Rlogin are three ways of doing the same thing: logging in to a multi-user computer from another computer, over a network.
Multi-user operating systems, such as Unix and VMS, usually present a command-line interface to the user, much like the ‘Command Prompt’ or ‘MS-DOS Prompt’ in Windows. The system prints a prompt, and you type commands which the system will obey.
Using this type of interface, there is no need for you to be sitting at the same machine you are typing commands to. The commands, and responses, can be sent over a network, so you can sit at one computer and give commands to another one, or even to more than one.
SSH, Telnet and Rlogin are network protocols that allow you to do this. On the computer you sit at, you run a client, which makes a network connection to the other computer (the server). The network connection carries your keystrokes and commands from the client to the server, and carries the server's responses back to you.
About PuTTy
PuTTY is a free SSH, Telnet and Rlogin client for 32-bit Windows systems.
SSH, Telnet and Rlogin are three ways of doing the same thing: logging in to a multi-user computer from another computer, over a network.
Multi-user operating systems, such as Unix and VMS, usually present a command-line interface to the user, much like the ‘Command Prompt’ or ‘MS-DOS Prompt’ in Windows. The system prints a prompt, and you type commands which the system will obey.
Using this type of interface, there is no need for you to be sitting at the same machine you are typing commands to. The commands, and responses, can be sent over a network, so you can sit at one computer and give commands to another one, or even to more than one.
SSH, Telnet and Rlogin are network protocols that allow you to do this. On the computer you sit at, you run a client, which makes a network connection to the other computer (the server). The network connection carries your keystrokes and commands from the client to the server, and carries the server's responses back to you.
Subscribe to:
Posts (Atom)