Tuesday, November 29, 2016

Scratch - About Me

After completing my animation, I'm most proud of my ability to adapt and understand the different functions of coding to enable me to create an animation. I've never created an animation before and I've only completed very little programming in my whole life, so being able to use the software to create an animation myself shows how my hard efforts and persistence worked to produce a final product. I was having difficulties trying to determine/figure out how to make one of my spirits glide across the screen and animate one of my sprites to dance. It was difficult because I was unfamiliar with the program or coding in general. However, I experimented and did what I would describe as trial and error, trying different combinations of code to determine which were successful in allowing me to animate and move my sprites how I wanted them to move. Next time, I want to experiment with more of the functions available with stratch, and see how I can make my different sprites interact with each other more and in different ways. From looking at other's About Me projects, I learnt how to incoprate different functions such as the keypad or certain objects in your animation that cause certain things to occur in others animations. Everyone worked really well and created awesome animations, and overall I'm proud of what I was able to achieve with my animation, but next time I want to expand on it and incorporate sounds and different functions such as conversation etc to make my animation more interesting and engaging.

Saturday, October 29, 2016

Let's Dance Evalutation

Let's Dance Challenge Evaluation
Partner: Jada Thai

Dance Video:
Please click on the following link to view my video: https://drive.google.com/file/d/0ByyLyKS2Wklpa1prZU5nOHJXVG8/view 

After many lessons of planning, programming, testing, adjusting and problem solving, I have finally completed and produced the final product of my dancing robot. Overall it was a very exciting, interesting and challenging process where a lot of trial and error was involved, but also clever thinking and experimenting throughout the entire project. Whilst creating the dance routine, there were several processes of planning, programming, designing and testing that led to the final product that was produced. The planning process was very essential and I viewed as an important component for me, because if I created a very through and detailed planned that well explained each step it would make the programming aspect easier. So throughout the planning process, I was cautious to make sure that t I explained each step in depth and detail so that I could easily follow and understand exactly I would need to do when I was programming. It was efficient and conveinient method of planning for me. The programming and designing was a bit challenging if I'm honest, but I enjoyed it because programming is something that I've never done so it was fun using it for such a fun and engaging activity. I put much time and effort into the programming and creation of the dance ensuring that each step was accurate and successful by constantly testing each and every new step I added. It was a long process, but it was effective in allowing me to easily identify what did and didn't work so I could make the appropriate decision to rectify and issues. I enjoyed developing and putting together the programming because it was fun to see how each step came into place to create something much lager. The testing I discovered was essential to creating the dance routine because with each of my trial and errors, I could determine which steps did work, and which of those needed adjusting so the routine could be created.

I was very pleased with the final result of the robot dance routine, and majority of the dance elements/ components worked well and were successful, however of course there were some issues both during the creating process and final product. My robot was successful in completing the dance and meeting all of the requirements, which was an evident strength of the end result. Throughout the creating process of the dance, I was strong in efficiently constructing and developing the routine because of my detailed planning which thoroughly explained the components of each step which I simply had to follow so it worked very well. By me producing/creating a very detailed and accurate plan, the development of the programming was much more effiecint which was a very strong strength of the dance process. As I was creating the programming each step was easy to follow so I was able to put it together quite well, making very minimal adjustments. The detail of my planning was shown through efficiency of my programming which was evident through the accuracy of my testing, with each step working well, almost all without fail. Each component of the process helped to improve the next stage of the dance creation process which are what were the strengths of the whole dance creating process. However, as in all good projects there were also some weakness that I can identity within the creation process of our dance. One being the unsuccessful programming of each of the sensors. No matter how hard I tried, or how many different ideas I thought of and tried, none were successful in getting any of the sensors to work, and this flaw in my programming was a weakness that would've taken the dance routine to the next level. Time was also a weakness. Due to how detailed my plan was, it meant that the programming took a lot of time that I didn't have so I had to start quickening my pace and making quick decisions and construct the programming as quickly as I could because I was running out of time, which led to some errors in the programming. As a result of my quick and flushed state, I made a few errors whilst I was programming, so sometimes I would forget to test a new step I'd added and so when I did test the routine with a whole bunch of new steps added at once, something would go wrong or wouldn't work but I wouldn't know what so I'd need to start again of keep making adjustments to the programming that effected the routine. However in spite of these weakness and negatives, overall I am very proud of the product I produced. Although the sensors didn't work during the final performance, the rest of the routine worked perfectly, working well and in time with the music, without any glitches or errors in the programming and no interference, as well as with all of the other steps, images and sound effects meeting their cues and successfully working, all within the time duration.

The end product of our robot was very pleasing to me peers as well. Georgia identified several strengths of my robots dance, as she commented on how well it preformed and executed the dance by awarding me with top marks, and commenting on how well the robot preformed without requiring any assistance or aid from anyone, and also how well every step of the routine worked, even including how the robot was able to finish the dance in the middle of the table, and complete each step without any difficulties or issues. She agreed that the routine/robot was well in time with the music and so was quite rhythm, and that I was successful in incorporating and using several different techniques of motors, displays, sounds and the touch sensor during the dance routine. However the weakness she did identify with my work  of the dance routine was the lack of sensor use. Although I did use several different techniques, I was unable to use/get any of the sensors (other than touch) to work in end product, which she explained to me in her comment.

Now looking back on the entire project, I can certainly identify some clear ways as to how I could improve with this task. To begin with, throughout the process of planning and then to designing and creating the dance routine (programming), I need to be more precise and aware of what I do. So instead of simply inputting everything from the plan, if I had more time I would be more cautious as I create the programming making sure that I stop the check the success and accuracy of each step by testing the routine/program after each new step, not after every few so I can avoid any errors and make the routine more sharp, precise and accurate in the execution of the step. (time, distance, moment etc) I would also liked to have added my own sound effects by adding my own recordings to make the routine a but more interesting and fun, and as a way to personalise the robot and routine a but more, and even to include some of the lines from the song so the robot could be more in time with the music. Finally, but what I believe to be the most important, the main improvement I would make to my routine, which was the improvement also suggested by my peer Georgia in her feedback of my final end product, would be to fix and use/include all of the different sensors. If I had more time, my major improvement to my dance routine would be to spend time fixing each of the other 3 sensors (colour, ultra sonic and light) so that they would work throughout my routine. I would try different alternatives and methods such as using loops, switches and changing positions of the sensors to see what would and wouldn't be effective in allowing the sensor to successfully work, so my priority and main improvement would be towards working to fix each of the sensors to work. Overall I am ecstatic and proud of what I have produced in each stage of this entire project from the planning, to constructing, to creating, to testing and the finally producing my final product, and I have enjoyed this activity and trying something so very new to me and learning about a topic I've never learnt about before!!!

Peer Evaluation: Georgia

Monday, September 12, 2016

Robot Programming - Colour Challenge

Robot Programming: Colour/Traffic lights Challenge with colour sensor
Partner: Jada

Programming: Using the colour sensor to program our robot to go at the colour green, and stop at the colour red.

By completing this task, I was able to successfully program my robot to respond differently depending on the colour it saw. My basic knowledge of using the colour sensor from our previous task allowed my to understand and develop basic steps to allow me to design a pattern that allowed my robot to respond accordingly to each stage of the course. From completing this task, I learnt more intensely how I could program my robot to respond differently depending on the colour it sees. As I completed this challenge, I learnt how each step of my programming effected my robot. When I broke the task down, it was easier to understand how I should approach the task by breaking the challenge down into small steps that I wanted my robot to do to then overall complete the challenge. From completing the task, I was able to learn how I could program my robot to detect and respond to more than just one colour by adding extra boxes to the pattern and then making our robot respond to a particular colour differently. First we focused on programming our robot to detect greed and continue moving, which we learnt from our previous lesson using the colour sensor, and after a few runs and it was successful we incorporated red into the programming and making the robot stop. 

A major issue I cam across when completing this task was adding in the extra commands after each colour into the programming. It was difficult to add the go and wait commands into our programming so our robot would stop when it detected red, and then continue going through the colour green. After several trials and error runs, we were able to create a working program for our robot that successful detected each colour and responded accordingly, however if we had more time I would've liked to have altered our pattern slightly so that our robot would continue to go through the green paper without stopping at all, and then getting it to completely stop at the colour red rather than just waiting until it moved. We were successful in being able to complete the course despite what order the colours were in. We also had difficulty with the direction our robot was moving it, as when we tried to make it go in a straight path it would always move on an angle however I believe it is due to some defect in the construction of the robot rather than the programming, so I would just like time to reconstruct my robot and resolve any potential errors that may have been made when it was first built.

If we had been able to program our robot to detect the colour yellow too, that would've been interesting to see whether it would've worked as efficiently as the red and green pattern did too, but I would've been pleased if we were able to program our robot to stop completely at the colour red rather than just waiting for a few seconds, and it is something I would like to alter in our programming. If we learned more about how to incorporate different colours into our patterns when we're programming our robot to detect several different colours, it would've been easier to complete this task. 

Tuesday, September 6, 2016

Robot Programming - Colour Sensor

Programming a robot using 'Lego Mindstorms' with Colour Sensor
Partner: Jada

Programming: Detecting the colours red, green and yellow

What was the most difficult part of this challenge?
Whilst completing this challenge, I found it difficult to determine how to program our robot to detect multiple colours, and identifying mistakes within our programming. Our programming wasn't successful in complying with our intentions, and so it was challenging to figure out what was going wrong. We didn't understand what part of our programming was incorrect and was causing our robot to unsuccessfully detect any of the colours, which ultimately was the greatest challenge of all. Trying to determine what needed alterations and changing was the most difficult part, because without identifying the problems we weren't able to make the appropriate changes that would allow our robot to function properly and the fix the program so that our robot would detect colour.

How did you go about solving it?
To solve it, I was stumped with at first. I constantly kept re-rereading the instructions and guidelines to ensure that my pattern was correct, and I couldn't find any faults with that. So then I decided to do some trial and error runs and still I could't identify what was the issue. I decided to keep the robot connected to the computer so I could follow the programming as the robot completed each action and still I had difficulty determining what alterations needed to be made. It wasn't until I decided to redo the whole pattern from scratch, and complete the whole program step by step again was it that I finally indicated the mistake. I was quite surprised to see how such small mistakes with our pattern had such big effects with the programming, and as I began to redo the pattern I realised that the wrong port had been written at the top of the box, and so the robot didn't recognise that the colour sensor was actually in port 4, but the programming said port 3. This partially fixed the issue but then we were unable to get our robot to detect the colour red, until further inspection and construction made me realise that we'd forgotten to tick the red box in the wait command so that our robot would be programmed to also detect the colour red as well as green. So it wasn't until I went over our entire programming step by step again and understood what each part of my pattern made the robot do and I understood what I wanted each part to do was I able to identify the faults within our programming that were causing problems wiht our robot.

Monday, August 29, 2016

Robot Programming - Touch Sensor

Programming a robot using 'Lego Mindstorms' with Touch Sensor
Partner: Jada

Programming: Release and then rotate

What did you find difficult? What did you do to rectify the problem?
Overall Jada and I were successful in operating the touch sensor on our robot, however we did find it difficult to determine how to turn the robot at an accurate angle acting hitting an object so that it could then turn and proceed until it came into content with another object. We had to constantly readjust the degrees at which our robot was turning at because it would constantly be either too narrow or too wide, and it was difficult to find the most accurate degrees for which our robot was to turn at so that it would turn just enough to re-aline itself in a straight position so the touch sensor could easily come into direct contact with the object ahead. I found that there were constant trial and error runs we had to do, but personally I was able to learn from each attempt and then adjust the robot according to the outcome of the attempt, so if the turn was to large I would decrease the degrees and if the turn wasn't large enough, I would increase the degrees. It was just having to determine the most accurate degrees for our robot to turn at so that it was positioned straight after it hit and object and turn so that it continued in a straight motion when it moved forward and came into contact with the next object, because when the angle/degrees was wrong, our robot would turn at a wonky angle and come into contact with the object at an angle so the touch sensor wouldn't actually come into contact with anything and therefore our robot was stuck in place. Honestly, I simply did a lot of trial and error runs so I could determine what did and didn't work with each programming/pattern, and I learnt from each trial to determine what changes to make. (such as either increasing or decreasing the degrees when the robot turned)

What did you learn and what do you want to learn?  (what other things do you want to be able to do with your robot?) What improvements could you make?
I learnt how basically use a touch sensor, and how some of the programming worked to basically operate it when creating a program for our robot. I determined that it was difficult to program the robot to turn at accurate degrees, because the degrees weren't exact, so what we presumed was 45 degrees was actually much larger than we anticipated. In future, I want to learn how program the robot when the sensor bumps into objects rather than just obstructing them, and also how to program the touch sensor and robot to respond to hitting into objects of different materials. (some that are hard, and others that are soft. Again, I would like to tinker with the degrees a bit further so that our robot turns are a more exact angle so it then follows to move in a straight forward line motion, rather than on an angle still so the touch sensor comes into direct contact with the object easily, and lowers the risk of the sensor missing the objects and instead the robot hitting the object at an angle and missing the sensor. I would also like to readjust the position of the touch sensor, because it wasn't connected very securely onto the robot, and it is likely to fall off in future use without future adjustments. 

Saturday, August 27, 2016

Lego Mindstorms Programming - Ultra Sonic Sensor

Programming a robot using 'Lego Mindstorms' with Ultra Sonic Sensor
(to detect and avoid hitting objects)
Partner: Jada

Programming: With sound and image
What was the most difficult part of this challenge?
Overall Jada and I were able to effectively program our robot to detect objects and then reverse and rotate it to avoid hitting majority of the objects the it encountered in its path. However while this was true, the most difficult part of this challenge was determining the most accurate order to program the robot. We had difficulties trying to determine what should follow after each step of the programming such as when to stop the robot and then when to turn it around. Also, it was had to actually program the robot to turn around to avoid an object at the right degrees, because it constantly kept turning to close to the objects that it kept hitting them, or too much that it turned completely around so the timing and distance was also a bit of a challenge.

How did you go about solving it??
To solve this dilemma, we decided to break the task down into smaller steps instead of attempting to program the robot all at once, so we could focus on getting each section of the pattern/program correct before moving onto the next stage. We created the pattern section by section, by breaking down the overall aim (which was to program our robot to detect and avoid objects) into smaller steps. First we programmed our robot to move forward, and then for its sensor to detect objects 10cm or less away which we decided as a class. Once it detected something, we programmed the robot to stop which we initially had before the sensor detected objects, however after a few attempts we recognised that we needed it to stop after it detected something so the robot could then reverse backwards, because the ultra sonic sensor needed to send a out a response first and then receive a response back to determine if there where any objects in its path, before it could then stop to move around it. So once we programmed it to stop, and then reverse, we determined that we needed to rotate our robot to avoid the objects in its path. It took several trials and errors attempts as we kept making slight adjustments to the degree which the robot turned, but eventually we reached a degree that turned the robot sufficiently around to avoid the object. Once we completed each step, we moved on with the next step/task until we ultimately created one entire pattern, and then we simply added a loop around the patter so the robot would be programmed to repeat the steps whenever it encountered/detected an object. 

Monday, August 22, 2016

Nao Robot Report Article

"The Revelation of Humanoid Technology - The 'Nao' Robot: A Way of the Future"
By Lianna Scalise
It was a warm summer's day in the beautiful city of France where the revolutionary 'Nao Robot' was officially and globally released to the world in 2005, after the launch of Project Nao in 2004 and the beginning of the robot's development.  After a long year of development, the Nao robot was finally created and ready to be integrated and part of the world. This robot is advanced and better, and is greatly ahead of many robots due to its humanoid programming and enhanced abilities. The Nao robot is truly unlike any other robot that has been created, and is capable of stimulating humanlike emotions and behaviours ahead of many other robot designs and programming, making it today's leading humanoid robot. The Nao robot was designed to process greater amounts of information at a quicker and more efficient rate than other robots, and was designed as a learning base and foundation for teaching children and adults the fundamentals and skills applicable to STEM topics. The Nao robot was designed to serve multiple different functions and purposes including the development of education for autistic or development disorder people, and is vastly used as an education tool for teaching, but also for global research.

This admirable and inspiring purpose of the Nao robot, is its influence and teaching abilities, that allow the robot to engage and aid with people of all different levels and ages to help with each user's educational development as they offer guidance and support to those who seek aid and learning from. The Nao robot has greatly benefitted autistic children, and leading engineer Nicole Whiteman a part of the intelligent French robotics company (in Paris), 'Aldebaran Robotics' explained that "It acts as a teaching tool to significantly to help autistic or development disorder children to learn and develop important foundation skills necessary for life, which they can further advance on with the robot, and it allows them to learn in a way most schools don't provide the personal one to one teaching and lessons suited to the child's needs and abilities, however with the invention of the Nao Robot, children are now able to interact and communicate with the robot which can walk, speak, listen and move to establish and create a more engaging and comfortable leanring environment for children."

So how does this incredible robot actually work? Head designer Matt Brown explains describing that "The Nao Robot is programmed with software and pre-programmed lessons, data and information that are used to teach children, but can also be programmed with new programs and software via its simple drag and drop boxes, or more advancely through more difficult and complex coding. With these programming methods, people are able to create presentation, programs or lessons suitable and specially to their purpose or the individual users to provide assistance specifically to their needs. We have currently integrated the Nao Robots into several different school, most that cater for autistic children with programmed lessons and activities that are designed with activities and tasks for the children to complete sot that they can learn and develop their skills. We have equipped the Nao robot with a vast combination off different tools, functions and operating equipment so that it is capable of interacting with its user to help teach and aid them, and enforcing its human like qualities or interaction and communication. We have incorporated several different sensors, cameras and microphones into the Nao robot that make it capable of human interaction. Its camera allows it to examine and be aware of its surroundings, as well as recognises faces, whilst its speakers and microphone allow it to listen to the user and detect their voices so that they are then able to respond to their answers, commands or choices, with particular responses depending on the user's request. Ultimately we decided to include sensors however there was some debate about its relativity, however we did include sensors to detect touch and a sonar to detect objects which allow it to keep its balance and positions. All of its functions and equipment are up to the highest of standards and are vital in allowing the robot to interact with others and teach efficiently and accurately."

The Nao robot is unlike any other autistic aiding, teaching tool, and is truly capable of interacting with its user on a personal level with specific guidance, lessons and even rewards to engage its users. It reflects some of its human like qualities in its ability to express and honour/celebrate a student's success by offering a dance as a reward for a student when successfully completing their work or making significant process. The Nao robot has programmed lessons, games and puzzles that are designed to test children, but also offer support and aid when they need it, and this allows it to act as a highly sophisticated and reliable teaching tool, offering different programs for different lessons for different students or different abilites. It creates a new way to learn, in a comfortable, friendly and engaging way for people. Every parent wants their child to enjoy and do well in their learning, and this robot has been designed to do just that as it teaches and educates people of all different circumstances and capabilities, suitable to each individual to create a very personal learning experience that will honestly help and benefit the user. Children develop positive learning behaviours and attitudes towards learning, and the robot is adaptable to all types of different people to help each user greatly benefit from their use and teaching from the robot.

However the Nao Robot is not limited to just children (autistic or not) users, it's available for a range of different people both children and adults with and without disorders, and greatly assists with the educational progressions of its users and offers apps and lessons suitable to health and rehabilitation too. It can be used in a range of different environments depending of the purpose it is intended to serve, the circumstances or the user. The Nao robot was first used in autistic and special schools, and is still highly used and designed to work in special education schools to aid autistic children or children with development disorders. However it has slowly been introduced and integrated into many primary and secondary school to aid children with and without disorders. They are generally designed to teach STEM related topics, but they're also used by adults to aid with rehabilitation in healthcare centres, but also in institutions, companies and labs for research in robotics. The Nao robot offers step-by-step lessons for people of all different levels both mentally and physically (age) also including primary and secondary levels, and its humanoid design allows to to interact with a sense of emotional with its users.

But just why should we be willing to let our children or loved ones use a machine to teach and help them? Well after extensive research, it's been concluded that Nao Robot improves the attitudes and motivations of children, and encourages a environment of comfortable and enjoyable learning. The Nao robot creates and engaging environment, and is shown to encourage the user's willingness to learn and challenge themselves, and they are able experience a range of both theory and practical work that is offered by the robot, providing an engaging experience for children whilst they learn which furthermore promotes and inspires motivation and interest for learning within children. This futurist robot acts as a electronic teacher that helps to encourage and aid children with problem solving and communication skills that improves and aids with their leanring development and effectiveness. The Nao robot is an advancement development and teaching tool that creates a safe and positive leanring environment without the pressure and stress from a normal school environment/classroom for children, as it offers fun games and activities for children to complete at their own pace. whilst even offering a minor dance performance as a reward for a child' success and progress, to agin enforce a happy and enjoyable leanring time for children. The Nao robot teaches children both words and numbers, but also help children to establish and learn moral values such as right and wrong, and educate them with knowledge applicable to their futures for both children and adults.

In spite of the glowing profoundness, fondness and admiration the Nao robot and Aldebaran Robotics have received since the Robot's completed development, there is also growing speculation and worry regarding the safety and life long effects that may come about as a result of using the Nao Robot. Parents are worried that if their children constantly use the Nao robot rather than receive their teaching and education from teachers, their concern lies that their children may become to reliable on the robot and develop reluctance to gain further education and development without the robot. However, there has been no evidence to suggest or prove that using the Nao robot with affects a child's social advancement or development that they become reluctant to engage with other people. no has it been proven that such problems have arisen as a result of a child gaining an education from the robot. However, there is still the potential risk that children may become to engrossed and reliant on the robot that may effect their social interaction with others and desire and motivation to learn beyond without the robot, so it's best to be wary and engage children in regular group activities to allow them to maintain a social relationship with others.

The Nao robot is the future for humanoid robots, and symbolises the advancements that are continuously being made in robotics, and the hope and opportunities robots provide children with to give them new possibilities in life, and aid people in their struggles and difficulties when it may be difficult for others to help. The Nao robot offers companionship, and allows children to build a positive mindset and  mentalism to enjoy and be motivated whilst leanring in an engaging, fun, friendly and comfortable way. Its humanoid design and interactions allow it to establish a friendship with its uses, and its unique ability to partially replicate human expression and behaviour qualities are what make the Nao robot such an innovative and extraordinary robot, that truly helps to benefit and aid the lives of many people.