Today, we met to discuss the algorithm that the robot should take to accomplish the main tasks associated with the goal of this assignment. We want to be able to have the robot track a line, sense an object through the use of the sonar sensor and the touch sensor. We started further discussing the methods of using while loops and if-else statements to get closer to our goal. We created a sample program that we think is gonna get us closer to our goal, here is a sneak peak of the code:
#pragma config(Sensor, S1, lightsensor, sensorLightActive)
#pragma config(Sensor, S2, touchsensor, sensorTouch)
#pragma config(Sensor, S3, sonar, sensorSONAR)
//*!!Code automatically generated by 'ROBOTC' configuration wizard !!*//
task main()
{
while(SensorValue(touchsensor) == 0) //not hitting anything
{
while(SensorValue(lightsensor) < 50)//black region,
{
motor[motorA] = 0;
motor[motorB] = 50;
}
while(SensorValue(lightsensor) >= 50)//light region, keep switching motor directions
{
motor[motorA] = 50;
motor[motorB] = 0;
}
}
while (SensorValue(touchsensor) == 1) //hits a wall
{
//back up
wait10Msec(2000);//wait a bit first
motor[motorA] = -25;
motor[motorB]= -25;
wait1Msec(1000);
//Turn right at an angle
motor[motorA]= -100;
motor[motorB]=0;
wait10Msec(500);
while(SensorValue(sonar) >= 50)
motor[motorA]=100;
motor[motorB]=50;
}
}
This blog is the sub blog that lists our weekly updates and teamwork. For the main blog page, please visit http://du2015-group01-60.blogspot.com/
Wednesday, October 28, 2015
Monday, October 26, 2015
UPDATE: 10/26/15
Today my team and I continued to calibrate and test the capabilities of our LEGO mindstorm NXT robot car. It successfully followed a black line and we got the extra parts we need to add some more sensors. We are still trying to find a way to add the touch sensor to the front of the car and successfully attached the ultrasonic sensor to the car. Besides this, we further discussed our blog and ways to improve it. Upon this we changed our blog a lot and added many new sections. Our blog is now up and running with all of our bios, pictures and videos. We also went over the major codes that are taking part of this project with the group to elevate everybody to the same level, as me and Abanoub are more in the designing part. All in all, today was a very successful day because of the progress made on our blog and the fact that we have a working autonomous navigational car, which just needs some fine tuning.
We continued to drastically change the overall look of the robot
Sunday, October 25, 2015
UPDATE: 10/25/15
Today our team members met in the school library at 11am to continue working and progressing our engineering design project.
First, we started our meeting by connecting the sensors properly to the robot, we checked and discussed which sensors we will need in order to successfully operate the robot.
Second, we tested the light, Ultrasonic, and touch sensors to make sure they all work as needed.
Third, the team built and tested simple programs to better understand how the codes affect the robot. Moreover, we tested different motor commands; we tried moving the robot forward and backward for an interval of time, we tested the circle turns making the robot move in wide circles, then we changed the values to make the robot turn around itself. We were also successful in making the robot make right and left turns in a 90 degree angle. We then programmed the light/color sensor to try making the robot follow a certain line of the same color, we tried different colors and different sensors and we learned that light greatly affect the accuracy and the performance of the robot's motion.
Finally, we tried to test the Bluetooth function and we were successful in giving commands to our robot wirelessly. The team created a google drive folder and arranged to meet again on Monday October 26, 2015 to continue testing codes and writing new ones.
We now have a fully functional car
Wednesday, October 21, 2015
UPDATE: 10/21/15
Today a team member met up with Mr. Marco Janko at 1:30pm to obtain a complete Lego MindStorms kit. The team then met up in the school library a 2pm to further the progress of our engineering design project.
Firstly, we began to build the robot’s body. Unfortunately, the process was halted because there where again, parts missing from the set. We build the robot as much as possible with the pieces we had available.
Secondly, we downloaded the software we will be using to build the robot’s program. For this project we will be writing our code using the RobotC software. Team members familiarized themselves with the RobotC software by following introductory instructions and tutorials. This was particularly helpful to those team members who had none or little code writing experience with computer languages. The team also built and tested simple programs to better understand how the codes affect the robot.
Thirdly, we decided to improve our means of communication. Some team member where having trouble receiving text messages from the group. We decided that to decrease or eliminate the frequency of missed text messages we would download an app that uses internet to send messages instead of cellular networks. We also identified a need for one hub that all team members could axes and edit its content. Therefore, we created a Google Docs file to serve this purpose.
Finally, the team arranged to meet again on Sunday to begin testing programs on the robot and to further its progress.
Firstly, we began to build the robot’s body. Unfortunately, the process was halted because there where again, parts missing from the set. We build the robot as much as possible with the pieces we had available.
Secondly, we downloaded the software we will be using to build the robot’s program. For this project we will be writing our code using the RobotC software. Team members familiarized themselves with the RobotC software by following introductory instructions and tutorials. This was particularly helpful to those team members who had none or little code writing experience with computer languages. The team also built and tested simple programs to better understand how the codes affect the robot.
Thirdly, we decided to improve our means of communication. Some team member where having trouble receiving text messages from the group. We decided that to decrease or eliminate the frequency of missed text messages we would download an app that uses internet to send messages instead of cellular networks. We also identified a need for one hub that all team members could axes and edit its content. Therefore, we created a Google Docs file to serve this purpose.
Finally, the team arranged to meet again on Sunday to begin testing programs on the robot and to further its progress.
UPDATE: 10/19/15
Today, the team met at lab to discuss and brainstorm more ideas to further the research of our project. We looked at many new ideas to try to narrow down our approach and determine exactly how we wanted to build and program the robot. We started out by getting a LEGO MindStorm kit and trying to assemble a kit. We researched for some information on the internet and found out our best IDE for the coding of the project to be RobotC. We also connected many of the sensors of the MindStorm kit and looked at real time values of individual sensors. We also found out that the kit we have doesn’t have all the necessary pieces, it was missing some important pieces. Not having the whole kit halted our progress from actually building the model car that we need. We researched online and looked further at ways we can implement our project by looking at some YouTube videos and some prices of a LEGO MindStorm kits and parts. We also hypothesized about the exact mechanism that we would have to go through and the possible challenges we will be facing when we come across the function of the project. We also decided that we will be following a different path to designing the project as well. Our new objective will include having the robot track and trace a line while still avoiding an obstacle on its way. We ended the day by deciding our next time to meet and get a new kit that hopefully has all the pieces we need.
Monday, October 19, 2015
UPDATE: 10/19/15
This weekend our team discussed the proposal that is due October 19, 2015. While discussing the proposal we distributed the duties equally to each member and agreed to send it to one person to finalize the format, do a final proofread and add anything missed. However, while discussing the proposal we all realized how much of an important factor coding is in our project. We designated our team member Farad to be the head of the coding part of this project because he has the most experience. He agreed to search for C++ coding books to learn more than what he already knows. We also agreed on all of us reading the book when he finds it so we can all further our understanding of C++ and help each other when it comes time to start coding the Lego car.
UPDATE: 10/12/15
Today my team and I discussed the feasibility of many design projects, but only got was finalized. We first proposed to do something with solar panels but when we asked TA Marco he informed us that to produce a sufficient amount of energy from a solar panel we would need a huge area, so we discarded of that plan. Next, we had an idea of making a sort of climbing robot, who's legs and arms would be inverted as it climbed up steps. We then realized that it would be easier to make a robot who climbed up a wall using the holes in the wall as stabilizers. We grabbed Kinects from the front and started to mess around with them, using them as gears to test the feasibility of our plan. This idea quickly died as it became more and more difficult to fabricate how we would achieve this. Finally, we came to a conclusion to build a Lego car with motion sensors that would give it the ability to maneuver through an obstacle course. TA Marco agreed with this idea and told us that it would be smart to test if we could make it parallel park first which we all agreed. At this time we realized that a plan of this action would require a lot of coding, so we all decided to use the coding skills we have and learn more. We then made a budget which is in now way finalized and a timeline which also needs a lot of work.
Subscribe to:
Posts (Atom)

