Sunday, May 14, 2017

Custom Bot Challenge

Our next challenge for the course was by far the most creative project that I have done so far in this course. Our task for this challenge was to use my creativity and ingenuity to design and build a robot that solves a problem. For our robot, we created a robot named  “ The 10der”. Its name is an analogy to a bartender or a waiter, and we decided to name the robot with the number 10 to make it seem more robot-like and technological. To build our robot, we incorporated key structures in order to allow it to perform tasks of a bartender.

One key structure that we implemented in our robot was its wheels which had various gear ratios in order for smooth movement of the robot. As seen in the picture below, there are 3 gears which help move the two wheels. The reason as to why we have the same sized gearl is to ensure that there isn't too much torque, as the robot will be dealing with liquid, hence rapid movement can cause a mess. Another key structure that our robot has is the design of the claw. As seen in the following picture, we have a small metal plate, which stands above standoff to create a platform that can be rotated. Above this platform, we have two long channels that are placed parallel to each other in order to create a claw. In the middle of the two channels, we inserted two long shafts, where the lower shaft is attached in a motor that allows for the bottom gear(smaller gear) to rotate, thus allowing the claw to move upwards and downwards. The second shaft is inserted above which has two large gears that help rotate the smaller gear below it, hence this allows for more torque and allows for the claw to move up and down efficiently. The main purpose of the claw is to allow it to perform various tasks similar to a bartender/waiter ranging from pouring water or making tea, thus there is a cupholder placed opposite to the claw. Also, we taped the wires so that it doesn't interfere with the transition of pouring liquid into the cup. To summarize, the claw that is situated on a movable platform allows for left and right movement, and the shafts above the claw allow for a lifting movement.




gkvJVdxsm9qjbg15o3EW_J6la6j7Opiw0Z_wlZ9ll-wUJAjM1abWvJcpBpCxVHbXv9evBbVSR93uSth0kKEvOlOgeJVeoVGIMEhwTJdW6HqByX6Ri3EtL1NJVaRtbjqjdGK6XUHBPPoP01gC1XLGnZ3svnotwpSvMla9VM0da1G365lkNMMNIPUD9WtbX2Krt5kpbeowLGY2xrBGlFvv0Dxl1rLmf4iMZgkeJiTr0U1kIjIusQsynmin5fqUMHRqew3giMdHjymtZdygmD7yYu3sZkwDqphLVh5JPuXy7wWJMb6p6NQdJi7JGg3MOu0Owi6Wym35LWUl61oGbSGKGdj5q8dMkZV5em9yH2j7ok01vmjnWKsyj8gYLrPxbxt0Lx0hUaw_rfcdFTlkqYQml9hlRUKxHWyPsQxZA88SctEbnTf1qr6gHJRm-t1bLZcjrs31Rproav5-q7qMdPGYB-pMs-l0gAhPRoAUkQuoiXIJLcVkUnUG-eSHCr4Th_roAIrKP3-TCQNfpfWx9UczgrtoJpZlxyQN_LyhZNyHPPx_x1mdXh94voIhler7MyTfegsKeD95QDNU7eybVt4Hjd4GxsiEdllLUFjwRl5oF6YTHZ9Tw3_CtBNvgVHBBSGbOfO9PvtOy6smS8E_xXyDQ8YUqUUW0HDs-JdxO6F86CewvWQ1YzKo4SPacTYEPK4p9MJ8zw=w1157-h612-l75-ftETTDKf8EID2B7w75bVwHelwwuA5UujqU67m5k_Pt0VOuS6WWy2wLoRvH1rvn1bejZ3LbjONsW1gWQnKLaDygODoPYO-jNFB9fiKPOUKUcV0AqLcSio7civeOTccYhymYMyGHu6BX83Z0WXhGGkd7hTpSev9-k8x8IezBZyv9gkLJORIcpHQhBGiKzAINDYqIPFQhw_LSuj0DAUPPeGSweW9Zm0bActXBqvVjvecWZwnn1tzFrLsjG0O2_TikzbyonpEc8-O28HQ_UjyHAMk_WG1JGrr8cd-zN3180KKcGFhBjZNkE-fw9Ht49lRvABBo4fvS22cr-s5bCMpJ2WYe_rj-9vGWruJGr4RCRKbgwhF6XVzFElPA1HvFQCLFPp7jP0WfWLyExBI6TpqsnjQsL0Sm5xwM_wE_a7xxF8W0EJNnKWUhTtcY2yF3i-6DNTfkzL8DGERLPXWWhphk2sqVrvH7bfVc2rQXQiLR7mfubptmL9UTzqrEZ4vgaLmhKo7dT7PpSnxosBeaqNFoTKE9ANZwHaFFHc9_kawonyCMrCXnqxI477olPnLQTJVzrqFp96-3-rJ_ipa5po4rjzR3eIY4cDK00SwgP2H-cfr-CQ1NBoEHguh5C0DgJNj1bdGueV6JDA_C_5DfhaLClmJwe2A44Y9v9dWf_tGhrg_wDTXFAHH08pkN8AcQXfLrrtrA25UwEHybJKo=w1157-h612-l75-ft




0r4qnOAWsjBILKVLUrgjm6UVTebHxeht48ZYbHo3Lw9RsAtvvAY9bc0fbAbWGJLOcUiaJyvuWage5H5i5Wu1lgktpfmxuteP9YuH-GuJmj8MaNyondur2mwObmwFdY0Awvdigg0qURrTD9mE4ZStAkVQaHfrxplVaPB8Ue4rjiBdy032d5SaWNu3BvDAN1050G1sUF7qmqXBVo76zpkMYY3zR01DiT7se2O8PMGGkoZSg7EAHdwMz0UL2337poEt4P5C3Z6EhE4g-Y6aQtgi8bN3VLRWM5gUYy9CWifbVw9kWeCggxZhcHo23DcM90mhGcCd7uH5IXBprlFv8K6poxHH24eNX1CKWZE3kRs4F_LJeHZMbC4ZcIcnAqyVX_NAbsXbgPbuWnBn6cWysF--bc4pCLJaG25PmKUUkGNN4EU8krXZu73THK1q4aGXEBzXoQF0dl2hpEurMb_R_DilQeoAOP-lbK1L1jUe24y7znVRHI-gg7ZaUWc_iA505avsP3KeagF8lbC5c_WEtxvUzjbvV_OHf7O-PowoRTTyyk57aNW2Sii9pIY7Fk-hsKc4BVMsjxJw8bFYaCevUmzu0Yp_rP3lRuku9JcpbKBxez2aq0BeoCu8qZhchNISNhfTnF-0EeBvOWvvZZE9wSQ9xJbuf4hxQfRKEDUIVqzIzEHdTclAuMdmPA=w1157-h612-l75-ft
WjwquY9k3aQMtaxDl816ghqdzY8kUp9eOZ2f3hoouDOGacBnhgOhvjE--N_C2RShVy0DJd-hnccSsjg3LYLy7VNpNWEVf3ZRi9DmKKIG58IyxJnHz8ZGcVkoHXcVJptPDVrRJTeYisNUDnGU0CnQN2y997GgjGhEC0K8zvk2LjDWw18M9RsOQby0E-Kw0FQmX1_r83NFj_nWgjOCxWKuMCHBcd7yI8Eeic4aESTZOjSWqzDN2GGUc0OCC4PrAS8lMgvYYAstvvBQTCD9zjqtCbbwBZ1cup5oI8jlaoTUmCLcuXfBRpv1AwFRiie-e9IyEni0xHoSBwj5vMAAtHFK-pFTHpxGhAyoshTaETgjNSa43taia5LdKB_VN1ovUegSa3OZvEiMJsAp-0trwNZLNbbfzK8OTIB9ibcJSOZIUZTOoZGMt07mURKDpXgaZUWvPD2Wz0Wm1E5eY-2XGXogwnYOityfNietj0bmKSjRbeK6JqFypqniGpQ7jW6CuxBqiOK6wgKO28RlJpYnNyNUMxDNHdzOd_0C2E10Zuf4lcOtJCP8e6in2CSolkIa2N2wfivT_06GlO80OLfA5egqLVlwuQb1blReAGWg2WYb8rXwEkjKISHlEdiAXmaJgpB1aMMAUAZ_fBpej4tOh18ItGyoDh3vim0D2dxM_Kp34DjHYjfpznDtY8e_RhXRrb-zmkgucg=w1157-h612-l75-ft
Gear placement/taped wires


DplZ-5PdoC0sObRfBxGQL_SzsPBVMAXnkYNuQ5TyB5KWvs1Rmp0GaorzVpjnlJoXdZSWouEzk1DuKbsFQCWmGKEuicmrrRNHuV74wfmGlIkwtdqF41M7XtK9IpRTYEgtYfw_oyLQVxD8vqW-T5MTK0D8KfV8_Np9jGx23Bq5mxBypSNJedBOimpaxLggvq5TnU6D92NUVkWczIK7SlG9g92pBGXvp-wY4GDPOrsbX7aROQVClk2Lty3llN25-sHe6r47fyE9O2qLgTR8hZAOB-pU2gXnMOVTrsliFOgbV30xBBrgif8CvXQyxVE9mSPUlm1uFkC8UIcg_DOIFb6yScP8y0lAyh6_vf1TRsXfeQIxG-ynmiTMkwwKEMhfjYbY5oEkPTFV3nAUj3JW2ZGO-JQIIsI4lhVxY8w1WGwH44noVkhMt4Eupv0jWuJsBqrNjY6PE3P1y2RMMoOBExW0xIQOk-lbvJa_qV7P0OQKhiyfr_Ow-0po2Suh7_8wG5IslbRnEK3eTixCOMPmlVND12rkdWIjlbuROP_EA8GtPM-xBPrUhwSxVa2zBlIsfiMix72IqH2lXtJ81NURtB4UTWx6JrhTUTNh_q7uXuRQZNHR5MFCu9M8QkEkZWVGotjEbU3c0_7D6E-ZA2a0_BDodjcruAAdQtUXza0Vst5fbzojjp3KPQy-=w1157-h612-l75-ft
Cortex wiring








Programing:
Due to these capabilities above, we programmed the robot to function like a bartender/waiter which can be seen below. We incorporated a program in which allowed the robot to move accordingly by using the joystick on the VEX controller and by clicking the buttons in the left portion of the controller such as the “R” button which lifts the claw, and the “U” which lowers down the claw. Hence, the robot is able to function like a waiter/bartender. For an example, the robot is able to make tea. The first step is that a tea cup is placed in the cup holder which is located opposite to the claw. Behind the claw, the ingredients for making tea is available, such as sugar,tea bag and a water water inside a small flask. The robot will then rotate backwards and take the packet of sugar (which has already been cut open) and the claw will quickly lift the packet of sugar over the robot  and the packet will land into the the teacup, pouring the sugar. Then, the claw will release the empty packet of sugar and grab the hot water placed inside a flask and then it will lift the hot water in the flask and pour it into the teacup. Finally, the robot will then grab the tea bag and put it inside the teacup for 1 minute for the tea to form. In addition, once the tea is made, the robot can personally deliver it to you as it has wheels. Furthermore, it can also perform simple tasks like pouring water,juice etc and also delivering it to you. Hence, the 10der will be able to tend to all your needs!
                                          VcACs7HdNP8W-TaYW5E1AqMYxyiY9MXj-BSxKZyMkjUxLNloCHgjPTQDPJxZl5-b2rQBztl_wPAdBPxSPnO2xCBspHV4INVPUNPaGo_QaBUl086s_bSVqHLD2pw2eTNyVu0Xp_TVi0VSaK-3O7rNW9_nth1iqqEOHxJvTWoFwfvmdXz25keUAyb_HVUJKQf5n9ILGdRSYc59JX4WvnLvCG9wSIS3aoqFMtONCVA1YHZsO5ena1VFsDZgAO8e2gpdalDcAYnpmtNACmA4Xc9cTjqoAr4_ak-QlCyc0OAOYBVQkcViQ5m986tgwQtLmyH8VJGK305sK_n62JHV0xJGq2vccOmSU5wrOEkNCuc1XEUf4leV7vPIX36kmzdGeNB-sLDr-VsEyJPCOhc6RM3buPGEPcS4oEOTvBZGz-eZ65PhyRTyu7Bc5fZtEhBdewnf1QvHpeIYrmXbVGe28sw2PEd8hInFxaJsM3s9L-lk3uyoKshMJjuqXVwx6peas7MyKAO9Q5sHtWY3rr1VAUG1k1wciR3GypdU3R-KtHMVpDjxE6p910zyz3HKKwh9Ezemi8rCO93bON1txc_SNcZQTJTVPApnHVPZWdIO0A6CqOPAa8OjupQt1R-KjSgRuS7bFlGXWiH6UgU6DpGPV9_pgzDsvK7cMi1HysRt2v191eXx5K5ecicx6aytTYpKyUmxPlPrrg=w1157-h612-l75-ftkNQJGWk3jUV4GuU8sHtIk72c-X0C-gk90IFT5m7BKcYrWv4qTCmb07WF4Qky4u1BZgGoorZ1nxek_r3lTnprR0gOp3CJehSPEvaFhHJ_rL5R9GUSDmOBFOE1VXMztwhaJMx-ZqWeeRhMJAY8W4l6ReKI2hGrZ0Xn4x9poPRpZiUP7mY26FMceP-ztCxOeAa-ijMCJUdrmbwgrvZf2I3AHzCs1JGyLtqqRIVVP-IicIVKgq6dbutqiKxL7iUmWY35DwnIXukX21godAUnUL-WcYB-_0mLAx9H1uRQbch0VODzIUfY_4C1j5Es82-E4KnZS53IeRhk7Lq5Ik0RSsPXWCO5mioJFJTz07Iwb_SGT2DuYo3XF1c1Ld5tK5Di4g58HEa6WA373sj_n2If8rViF5gBocdgIecY_lr3eQm3mYT-ZBuFNdK20Zqq498fPonVXvGSF48-DcYoQ_D3AnJtDtEa8-csTX_D76u1oq6bNeFibAHu1bDYCcymYyCkXzBzKiWM9YnO0N9Kt8AP-OJpQ_NYxBgWHMDUaaMjW4IdSchuAo9s5YbPBoM-UBlPx6niHua-7gmwF8BjslU3_zw5mN729eJdJZEhK2zu-XT8LhYo1fWdEFTw7B2dFHLHJE6gDJpafMGpouhj5g-jSsgNFyeM6obeEj6GTndNHvtkFzp_4dsrbTXV1KqcJmP6Hk70Cjqhqw=w1157-h612-l75-ft

Here is the 10der doing a simple task like delivering a can of coffee



Thursday, March 30, 2017

Swept Away Challenge

For our third challenge in the robotics course, we were tasked to build a remote-controlled robot to compete on the “Swept Away” field, hence making a robot that will throw or push foam balls into the opponent's side to earn points. The goals of this challenge were to learn how to make a remote-controlled robot and to learn to make a robot for a specific, dynamic purpose.

Below is an image of how our robot looks like:

WhatsApp Image 2017-03-31 at 12.41.51 PM.jpeg


As seen above, our robot had four wheels that allow it to move at a fast pace to obtain the balls in each corner of the field. The claw is specially built to have a long chassis so that upon lifting the ball over the robot, the chassis will extend over the wall in the field, hence allowing the balls to enter in my opponent's field, thus with a long channel, there it is more efficient as it saves time as we didn't need to move the robot so close to the wall in order to throw the foam balls over. In addition, the claw that is attached to the end of the channel has several steel plates & rails attached together. The thin metal rails are responsible for the scooping motion of the claw, allowing the balls to fall inside the claw which is supported with the steel plate and is then used to lift the ball in the claw to be thrown over to the opponent's field. Furthermore, the steel plates are also responsible in helping our robot to push the foam balls through the holes in the metal walls in case of a situation in which lifting the foam balls is a struggle. To help aid with the lifting of the claw, we incorporated a simple gear train, a big gear against a smaller gear which helped carry the foam balls off the ground through the claw.

In terms of programming, we incorporated a program in which allowed the robot to move accordingly by using the joystick on the VEX controller and by clicking the buttons in the left portion of the controller such as the “R” button which lifts the claw, and the “U” which lowers down the claw. The program is first downloaded to the controller which can be done by following these commands:

Go to Robot > Download Firmware > VEXnet Joystick Firmware and select Standard File to download the latest VEXnet Joystick Firmware to the controller.

WhatsApp Image 2017-03-31 at 12.41.51 PM (2).jpeg    



Once the Download Progress window closes, the VEXnet Joystick Firmware download is complete. We then moved on to the next section to create a wireless link between the VEXnet Joystick and VEX Cortex. To do this, we tethered the USB port on the VEXnet Joystick to the USB port on the Cortex using a USB A-to-A cable. Then, we powered the Cortex ON. After a few seconds, ROBOT and VEXnet LEDs will blink green, indicating that the Cortex and VEXnet Joystick have successfully paired. After this, we inserted the VEXnet USB Keys into both the VEXnet Joystick and Cortex. The next step was then to power the Cortex and Joystick ON. After roughly 15 seconds, the ROBOT and VEXnet LED’s will blink green, indicating that the VEXnet communication link has been established. Hence, our VEXnet Joystick and VEX Cortex were able to communicate over the VEXnet USB Keys.

Monday, February 20, 2017

Testbed Program



For our second challenge in the robotics course, we were tasked to build a test bed that uses all of the Vex sensors, thus creating a program that enables all sensors to be used. Click here to follow the steps that I took to build my test bed.


Here is how my final robot looks like:


uZI67ZLd8ua227xgjIYK1OtreigWkCCHqQwzxWSbPLvWABoNaE9o47m52x0GKS5LFpu88lR82VzLHkSapjvBPN2IiCfMp9yRB8O2Lccl46FRZ_5ZpV5TZD2LgHDLDkFUlZFYdwIDGC-KINfglaeRevCDWrG27AK8iy8_qy2xPv-3xND8mq5SvcgiLCWvWzCurg2wDFtLZpNyhRVCBSIxaidZzvK6i2nHgdki_x4u7q36zK8BLJZ6x49Ax0skOswtt0HXQrjXx_HJ_pcH7-7pfdw2LPPEakckF1PEYYnROxxq_RBK5JUv_0bli-I3FDtUwAXSbbH6dC9_YZ2B6AIqTK3RD6zvtUtkjrBYiaJROBnwVJnRpIf2XMNYEHkU0K69CnCjleD4VsBXdV-6XXBAuV0NXRg7Cap2GgI08YRIXEfz01CWqSskLl2OQ2wcHYUwo60nzX6jQuxk6V4tTm5aRLH0ko0UOPdjYvAUMlzi2nDlHoc95fm5u7MGrBQ4qXuJEc0C9Kf0AenhVKe8QdQySlwhPGp4Zmkp5pqjNSD_iq3ljQtdoTNGUVGgkFdZxTdWNJs0gQoE1Ndy-6ipFxin1M-X7Ll95z-pGGaaRcgTiGg-wa6gnD4t7czd-S-NMSyyKq5vOYnPsKFMIOIOBM3P_SCDTaYiIykZjdi9ukHc2UACtIvn6TQLV9Bu3XFo9VWXjnN90Vd1SMvopzyN3eVt9Ii7mA=w1157-h635-l75-ft

After we built the Vex testbed, we experimented with 6 programs which are listed below:

Task
Goal
Program
1
Turn on the right motor and run it for 5 seconds at half speed (63) then turn it off.
Screen Shot 2017-02-21 at 4.48.40 AM.png
2
Turn on the right motor and run it forward for 5 seconds at ½ speed (63) then turn it off. Turn on the left motor and run it in reverse at ¾ speed (94.5) for 2.5 seconds then turn it off. Turn on both motors and run at full power (126), in the same direction, for 7.25 seconds then turn them off.
Screen Shot 2017-02-21 at 4.50.14 AM.png
3
Add an UntilTouch for the bump switch to turn on the right motor forward at ½ speed and the LED on Then add an UntilTouch for the limit switch to turn off the motor and LED
Screen Shot 2017-02-21 at 5.02.37 AM.png
4
Turn on the green LED until the potentiometer value is greater than 2048. Then the green LED should turn off, and the left Motor should turn on until the potentiometer is less than 2048.
Screen Shot 2017-02-21 at 5.03.24 AM.png
5
Open and close the claw by covering and uncovering the line follower.
Screen Shot 2017-02-21 at 5.04.07 AM.png
6
Add a continuous while loop (1==1) to UntilTouch for the bump switch to turn on the right motor forward at ½ speed and the LED on Then an UntilTouch for the limit switch to turn off the motor and LED
Screen Shot 2017-02-21 at 5.04.55 AM.png

Thus, after much experimentation with the following 6 programs, I incorporated the following program on my VEX robot that enables to do the following task.


The first step in activating my robot is by clicking the bump switch, which then triggers the right motor(wheel) and makes it spin, then by clicking the limit switch, it stops the wheel from spinning. The next step is to lift the gear placed on the potentiometer and spin it clockwise, which then causes the wheel to spin again, but at a much greater speed and in the reverse direction. The third step is to rotate the gear that was lifted on the potentiometer anticlockwise, this then stops the wheel from rotating, but it triggers the claw motor, hence opening the claw. The final step is to put your finger on the line detector, once this is done, the claw closes. Thus, the 4 sensors (the bump switch,limit switch,potentiometer and the line detector) were used in this program. Moreover, with this program, the testbed can be used as a water bottle holder as seen in the following, and can be further programed and built to water the plants if wheels are attached and by programming the claw to lower the water bottle at a designated time.  


_SuWhC8_3zCmh6Ac-jcPPmfVAQ1mSJjWI4L7fNk1kGTg9OWLknhOhh09zMWjh4PUFjYgeSItVJRriC5BdbLX2EoHsmtEF9zTEUuRxwymaqSMEwOGM_AOu9eP-bgSGszWT_5zE2pFPUbWRn_vGjTkRfNjXQZ4ElkUe9dQFbHYdzxvknPwQ8xe68hlP42r0NBgt6grW6MhiN-T1RBTGpPOwk2SnM2kY0dZp2yxgIQvLhV5qG5JOpB6UXl04tu2M2Qe-4KwPgmC_x5cIL_1SyWLnC5M69F6satbbJ8RSgPsc_ixRZMD1mG8-ge7CUiN_yCgM9s0T-X_XsdaXIZADCyQQAfHs5W2RJ3LPpbotySCqpDTYsJTv5jqkpcWUjdvw8fZmFU2Y5cmKJ23GP81H7Wn9YJYc_Nj1ZzQQrk8eZp9eqFRz7U4_nqZnqciRAn1Os3Avlx8jaE_z_8gYS7yetARMbqzabR532TqzZDOqeUkFaeFKyPBP0XYw8xvpQG-13HPyyzTu4ZaUKH1UQn_dtt1pyH2QMQPWPQ8D-_Sh3x__X2KdnHgTEiHuyta9NZaxjX7nPv7E4Z_glUPYWt-SbEyFNR3n-sB4NaeANg7ZKTW6jo0Dajf-0wi0aSlKsEU-E4jP1cI6wR5MzzMwFRSRvwma6dMmgW_8Af0JpCosm-h8F2kBZKHHE7Gw7xY6tQbIrAmEjyTKHUvb0k0nQ1sjM2DVyIM9tOi0eE=w1157-h635-l75-ft EQwqQ44FCxWzRoYNT837uDhFFNzSIobLQjbxWdAa_Bajje8NEwEOrAm5Dbw1odSdpKAlZYbHpMzqtyEvN4vKpVDlaL8fnXhWLGscXmldPQRD02hYIYq_NvVpDQuHz-jnOo-9Z3hCghA1p4u7CVVaP2zstWxcrx8ZASYqlzLMhrGZujQFa8OVpMQyhg4sqiYQaRRBjkxERF5RSuy6nmj4sdB8-i-WE2ZIKokeBxZcYKXiUIGzVJxUHgpFID8Wh2fGb-x0DvX8J1XgjbStypLhNdWgtplOSCi2WhibSef0XeL5LT11jkJ4rAw3D7Z9ka8SBi_xeY7o8VXjWGdcIuPgvRYpg4ISBQJVQcqv9m5fQLu98Z0saQxbP63iWMaEVxegk_yyfcbbzfBlG_VJPTOtzghb1Skk8JGh7mFGSI2KAuD5QwT77SR4KB_cTl5a0w7B3p6-r0z7YCCNfxEqgnkEIH9it0wkhGykeE5ttlrUsmVGSKz4PRzD-eoDpV33fbXQJYZ9wLTU7eQUJnn3MvnqgAZcUcdFH8QOLC5c1KLpmbu01TRf-E4uVh7Ih8aICC0AQP_gsiQ6ZCYwghfZaSwcTVAcd804L8Vzh6zwcz7LvvEeAHR4tRyIjK8a44tc4XWlEAZJ6leqqEy7BkNYtsaPNq9UfU1KyhLDvRDAUTmxI1_u2k0NyIGnrgYm3XKcQLV3f7pfRTeAj8GCYtSZaXa5DIXW_s5omYo=w1157-h635-l75-ft




Below is a video on how my robot works:



Tuesday, January 24, 2017

Robotics Challenge 1: Mechanisms

For our first challenge in the robotics course, we were tasked to build mechanical systems to a robot in order to lift 1kg of weight 10 cm into the air. Before we built the robot, we experimented with 3 types of mechanical systems which are listed below.


Before building the mechanical systems, here is a picture of the tools that we used. Screen Shot 2017-01-24 at 11.23.10 PM.png


For our simple train robot, Deebz Corps and Vi Corps decided to form a partnership to produce a robot that can lift 1kg 10 cm into the air through incorporating various well-known mechanisms.


One mechanism that we used into our robot was the chain drive.This mechanism requires one large and one small sprocket on a side. When this happens, the sprockets rotate clockwise with the same velocity. To fix this, two shafts need to be placed through the box to fasten the sprockets. On the opposite side of the sprocket, a handle is attached to the large sprocket shaft, which turns the gear system. When the chain drive moves it causes the rope to tug. Note that all the wheels have a shaft collar in between the box and the wheel in order to allow for smooth movement. The chain drives requires a 36 tooth gear and a 24 tooth gear. The chain drive was responsible for moving the intake rollers which is responsible for lifting the 1kg of weight.


16244338_1370218683052105_173997583_n.jpg


Another mechanism that was used in our robot was the simple gear train. A simple gear train consists of a large driver and a small follower. This system works when the driver is turned clockwise causing the follower to rotate anti-clockwise. To connect the gears to the box, two shafts are extended across. To construct this mechanism, we used a 24 tooth sprocket  along with a 36 tooth gear. As the teeth align, the 24 tooth sprocket rotates to move the 36 tooth gear which then concludes in the chain drive functioning.
Screen Shot 2017-01-25 at 11.29.57 AM.png


The third mechanism used was a belt drive. The shaft of the wheel on the left has two intake rollers placed in between the box. A strand of rope is wrapped around the intake rollers while the other end of the string is placed through a hole in a plate that is attached by two screws on the metal box. The other end of the rope is then tied to the end of the 1kg weight, in order to lift it. This then allowed the gears to move while lifting the 1kg of weight.

 dnLGXc4VNwhsavaMmIeNV6QgPwGFBpKHxzKH3XHHvrV7Nq2Uf2uMr4h9itrCsJ9vA22hQSYWnBTJO2PwLufpUCvDgO64dGi6gIihHLmFxOxYAxIbX4lwtVL_NcErg1oHn944n23ukrLZfbMheLy2raY29fXff4V30jIDle9Sf-8ObtCGNkvlJMTK0Gt75NjSGtU-BNdyqqSTqDIASPc3k6cSsrhDOfICuLLGwkPPR_OiJkt1oPk_9THyNxDCufqgKE8IHcM8Zh5ce0LHHISbqcb4rQWwVeEfAh5F_YbMl3WRI1cYt1zbI02RkS9Tpypi0-bh8X24TLdFV0eUQkXPAw0fUKPYmyaD-ss-m64LZo98UqmjT3L5i5uBLoSlverUXCRbiTnDnAs14o1F5B8dX4Fh_qWiS-4136HcpQbn3SKuc9jyWjmMg5NkDAIlTh3u4WMmX36OoWG1Pkg2tRapCitWxubiCGmhBcPf15_CWOmtD6RaQa9GXnscJe1iCNMO0HzdWv04anxQaHkUtlnO1j-x9ypCiTmsjuubuA_lUUPEUjiz0q-f2ewuZ5AxAY1kJVs98fotsafLeZlIHdCCxwPr4zGcOJQK9W5j_NCjou2hFjgqSJ2zkY7QAd9-pcaUV_D1Tkb5OWrNTZKTt5XPyV5zmnf45h4xUOkhjjtTKmn5_xb8irIvHw3_xV1q0cuXVeRQp_5vgOxl438qGA=w1050-h635-l75-ftL52zewEjQIa1U1J_UbUHFNl3SkpZOauNqxFUqD7IWeemivQjHG4qUgU4dPzQOB8RgqLab48pnsfF9E5MDopFmmTunjDJhMN0dVXpHKSD6dotqazOJwmcFzOPL5Ga93s3oueN8IY-PnYak30uKQvlibgcofBWexiP3tDczPJekR0n7IlRlpCrO82oBz0pBWWrLE-Adit2PJ7oFtgtmQRfyKbDEJlReGVPD83hkh4v7lrMIBgyv-4lzsNrmwl86yvbNyJSBeyA77yN3tR35wpZrCCZi51NwQnpXfaT_RpoKTBgje1O_9_hTY_PE5UT0PIhMkUMldp5_E_Plv_fZ1xuYg4YWkTgn6UC7jcu2dYMn-4BF4vnhnQUJFfp0iJaKI-FWMohKEDxCU8okpiWiOLS6oV0gdZAUS4GAHa8-TMLwQhLJ2A44vzGZqjqWHgAxso1kKMOIXdDOnFmsMinVbMQCqGYbOvOkhzG-rEFwYlupuJ-2MIoiIq_gG02sTwmwVr6aAJq51N1GP_0aWO8XxMlD7dnHsWwABl1HWFGXofmeBMcTaFDfByimA9RLh5hFO6kpWQ_xChryUo6Itjxo7Qu0d5bcPI2Gf81vbFY8XW4SAxBdThGi-C3sEn0xBMPkULV6YcUlh_TcLvtOk7ukgg8x6nXh13va_YVj1H4vwe52SO19C_yZB39_UiIBDjE4Kr_IwRD7zGHznjJ=w1050-h635-l75-ft

9eX2FNFJgOhrjY7zrM2CkM7wr4663cnygryZvv98tE8nyZ7qgX4hLhEwa6VBiPgg4CYCt7DXvnOcMMKP1CRbZxgbJ_KgrWFyTe-w4RC5M17RN7Prtwod7wpgFd1WYU_KLOvxabyi4z_Jtp4mJ2XbWAVip-qVGw0a-CJ5r-8DcBd69yWGYluTx8Y88nRLV-FHwYVn41dUmP_VzwSHR83-Z-Jywl11xMA7XW_QMtbiCemn4Nu1ML1yTyLqoM0jVepMmptfMvQUhioZgiAfCf9NnrDwa8EgdURn2xsJ9Z3Fq15Wgpu-LYPoVKClcephQmf9zsppVKXe2VPRzfZNsm8wbMQ5O5sdSM3aOVwhyOuvXNI9dqeugS5Oa-dDzD0BynZDKgknZ0O8lRJVK6I7ibbImy8RE8zASCaDgxnQtEwLrgScC2w_O_w-tjOC-kgZ-4v0VHg4Zn3c_pGw8UZ99T7ovsGGN_rTDB3gaI4W5yRtCE2qqFjz35yKG4enhtJoBUkelAfgbOJdH1AECZcK0sK4m7qPjTTDgzo-7v2zfK7q4T_CkTrExEAvbq2Iz9sj1gCH6YM7PB5ahcSXP3sdJZfv8jxrwM7JEh90AqQvROGzvE7xto6o7Zhd49EqS6O2nDmi90KfYo2pLw0wqfVN4YQND5OKozp-73R-xDA0fJ8kaVvarGjz40YjnwmcwGQd8CEXqcN26lGLsllcvQ2qH0I=w1050-h635-l75-ft






o12iwouVxu54pT3jDlJKJN2lho1UQUICwWEt-d-G6_R3vmoFP3F4E4tcRU53Vb5cEnYMl_iOsBbEqpQeh0AG8TeL6esbrfBsqkkzNHNIWPS483OE_wPnAfSeL0NH2_EnSizhyX--SXlawv_MX42KyZUz55_8daHeZoDfh6SvYv0Dq-2_wdvuMj270dDfsHlNd8Ex8BW9qSblnpo973oNwic2eB7wgkXmuYQP7nk0iZUU3A6g8P77ywmEVeZTU8BiQ3OI7ud8eLQdxmKv-eUHLzc2TFW7osAkPNZIvPgl8NOsq7HlQqEjLbOrWGXM-99xGpwU1AUgdOKpT69A2CZ2P12zizBboFNBDOTD_0SLdhp5_SxFrRV6hEKJAwYWvXdjTpJ3XxZAauR938w2S7bLgka7RmYrMidCGwq6haH_3VYEAW6Q2bI1TPN-H4wDK-WXFmrIxknUvw6-eagegeUuyodJE61yJzDRctcA55_hK4Pn1a9kPRJ67ATjp1BF7ZW8Nls_Co3KNyUpsahQ3V6g5u8rgz1ih8wRi4h8Zf6Y9SsqLd_Bk3PW929ZYTzJmsaaOsppde7pFQ1GVLt8M7qYGYhpkvd5XVGJO_ZSWd0DKCANS9I-PwlkiQ134L-uew4I2deIGQwGLReD7jmaNHiQPaaA0j38lSd6TavzRoRgNFSdrT5wE1ar5f8D-TerL4j3dV9y1gskOa0o1XAQfg=w1050-h635-l75-ft
Below is an image of the final robot, attached to the 1kg of weight which is the tomato can.









Monday, December 5, 2016

IOT Temperature Sensor



To conclude our final project for the computer science class, we produced an Internet of things device which is a development of the Internet in which everyday objects have network connectivity, allowing them to send and receive data. For our class, we created an internet of things device which allowed us to measure temperature in which was sent to a web server for us to access through an IP address. Below are the steps on how to produce a internet things of device which allows you to send and receive data regarding temperature.


  1. Obtain the following items: Internet of Things”(IoT) kit,Arduino board, 10 Thermistor temperature sensor, Arduino Ethernet Shield, cable & power supply.

F87M7Vv3O4TlhamWEm6BcRhPLZTisqDS07XEkM_eXF9H3C5Sr451m8at231vwkMSbOl2Slmz7XXtUYdD6Fs2wqj37ti5-iMcoBw2IRd55v8eBXkmFpvVkXDTC2TysU02qJagbkla3ohN5OAyPaDFzDH1JPibfI0HXgnOBTNnzNvbvl0wWpypL13q_jgxlA5wmQks39C6RhNkQLi_F578_feWoz-OW9CXMKKkAkVk1O05YI2wDD-NROFJeWZjE0BUGkQRPK7k_2havZBO1MjpVmeARlwiSFePB3dBxTSbvaWHOasjO0q2aq5_ynEMJOSJ7R5d5IR4U9zdbwz0j5HH0--7qaXaJK7i20iTRn2bfOqHDrBnv79gJs9nxpsws4S7vv6D6Pl7Jf85Y_MmlSsTXc4bZEA6mSAXM_FzHEVqlbBeuo1lcy9E1Oa_IpIo_OPuxgBo1QFMvc8PrCQGcQa3WZY80zvIQkV7nWjcZRb5Qaa-JZMZRqEK8uypYP3Opr8v5kz_d7AV4diPrv-w4EvmQotNtFY3JNI_LKmixfdIUPNlO4B-VXWKjTHfEa9SwlxSlcZdoZzrTJC8ws9MwX3vp7OBfYkD9A4wPtGZPBXZciBOCBcK4J2xXXSaRRHrCgED8jdsIdz0zinlySg1j_vtBVy-jJbRS2PXgJE8uwTxUOyCuIjAeQEgCKrsk963NQ24aAlMBOj1RWeu=w1236-h658-l75-ft


  1. Assemble the breadboard, take the Arduino Uno board and fix it onto the breadboard. The arduino uno should be parallel to your breadboard. *Note: Arduino boards read inputs - light on a sensor, a finger on a button, or a Twitter message - and turn it into an output - activating a motor, turning on an LED, publishing something online.

  1. Next, take the ethernet shield, plug all headers into the shield. Make sure you insert them in the correct direction. The male pins of the header should enter the top side of the shield and extend out the bottom. *Note: The Arduino Ethernet Shield 2 connects your Arduino board to the internet. Important for creating a web server to see temperature values.

  1. With these pins soldered, plug the shield into your Arduino. Make sure your Arduino’s not powered while you do this alignment check.



eqUBbJxfLVl6tOBDFML99PKMfYoeMs0IhPRb82eZFByDYKDFrM2CdrpeQtEIMi5aDwwCn5irxkJTvGBBvPnS1hPiDxH7D6x-JempvtESCfRYh1mXNxv3pAAwL-TumJdfNV0R4IMDP4ZDKCLnyIukPLBhxTHzNkZUHQrPqa3vZDSqbByvzHQlSvHLxGle9qo-JElhNm1ICP64K4akQOJJneo07Xm9IZntJrVltKBuKbAtNoL1Aa4E1lVe4VzWDcAy9JOWZI7vTrkClebEOLt4Z0gv_ppbMZPbUAEgEluh9hwfYGSRVK170Nj066F6ZGO-zL7fD-YnpWjy-a37dUq-aJdS0qhn-rkzh_WKl-lN4JBZX79ToJPkynrA0CkrNH_QUPtBchqlAXiCoDubczJ-sYej8PuuSy_DU1lezZ59OYFPRyYnfhGIGbEhZ49Prx5l_Wevh1nS_ZSq7mRYXY2CqWi2ljhyxR9xA8aKkzP9d1vuhoDKW5SWVLvkwgX-ctaMmez_2R0IUjTuuTaENXvP-d1gZfxeXk161wOEzBUazfslUW-0WSMboPJZG6hcqff6cW4SVCtQOzXnnjmgxSAXE0quDor44vIAIQx89xD60aATycWxh6iE3NMFZbQRtY6saHLvDbOMzOQyG28mV2HsKaC3dB6TxUjj8J1jZeumhG1PPxqp5kiKOjcxmGawtj3b_FVvbLQlCDDQ=w1236-h658-l75-ft

  1. All of the pins should be  well-aligned and the shield should slide right into the Arduino. Take care not to bend any pins while inserting, and make sure they all go into the headers.

R-wSIEMW0ni6_cWrXlaNu0AqQ_7yfuteIr6bRKRDwpTy1vIkD3ZEO_B_CjeWC3Ctd4Ttqa95fRGqzbYCIHCrVLVOTAXbJY_nekbFAKgb_oRArivXvZgHEplNtBuXE7oExSy6sD6aB6PJRQ3UF__BS1TJ1gAwLMgCyXaDti7WgtkTVylJDUjiBK5hOWPB-sFtcVUd4k2DlL0Oim17zIyyJUc3VTkOIY8Lxuo_wN_8fHpUVTK4fZwN8dGg63kmB6wI-KPZGZbmk9my-VtHresEY_DtxMNN0LWYEuT9XNC0UsTjy3cGpuEM7mXBQImsXu-6aYIa1VZ2GrfgMRZ6Tp2ITWuEI4JuY-SZ21FRPBW9VRoGt8QsaERllNic1I-ungCid2hGP8udi4Pxuh9JQ6f3W8eetxxxwFVDAl2lug4wBnNd8d03O1OwEOewSdqaexyOln0QbmRbkkVPEjTxwX1BhR_YH_DMEKFSh6tnQJpp4b64a1l0EKuXDBHwq01hO_zC03Sctf0NhafKbnPIosmJsGOqkLjZBvnStW8w4HywS_YpXwOs2AFAltYBscbC92TKEWvZkV7qW6aaAf5yQm8-mpoN01qnV6Hxw6HKyNZfyfrSQ2RKzNFtYThY6c1O0R6sHbQ2vHaqtaZtcBM_vKP8BaHfpXHPswBr_bN16hHB9Rm3pEdorxflmHII3Z4y1crlk4BPsvLodxw6=w1236-h658-l75-ft





  1. Take a 2 red wires, 1 blue wire, 2 black wires, 1 temperature probe, 1 resistor  and a Arduino cable.


gtlzulaqEHMGLuTk0-3Ug_kud_eOZ--8LFFn3MOUUDQqg6OIU2f7E2pWFptuurKukZ7eiG_HmcIFeYEV3JWr0Ah4Tfv2zKUvlqTj7zUMelgvdiEFRqNJKY4ZemNDC4BWAQfLLv568TgDnmVi6Cndx00yeeSfkPo3I5ZzNFJieBi27DPqXKfsfcMwZNzWf2N1zhdwJ5Cv2NEJ3rxM8Ne9gCfLCLRtrQ_D3XFXKRk10Ip7X6cuvyOW54eSDahqlpnTtNkIrHRiejuH9kGArSXXLilEi88re9GYxA-xK_sd9HjNAVsKQg3rJ7EJ-ps3lcgdupu-4k-qQZpoGfWdu7kcFjSeVL2UivwaQxqOVgJW1S822Lh50baUu6y3vqkiqHVeYHcRGSMd-CeIZwH5h7RGBNWLKTque1BgPReNENDg_fTTCYsFmERmA7gYvjM_PV5Ggvg2QlpKvIG3ZN7jHbJCjkhovkJoxxj7JMANjAFkwtT_UlnHdVKUYJtWc-dBvagb7JSF8b96WdiE15QXgC9Jq-Jghbq-uhCvIf65hrG2exyBHKyAVpdUYjICU-x-nAZ8hQVHPbVeHMY9D-1GVwUqdwoKdu3YAbm_9meuRPFIoEQiNR-rGZH2MprbHdlogsVE51RicAaWQN5-wSgoymm0O04N5G39Fvu4G2hy9YW-DhZXFlVuBrZYmwjpZ0YdDzAKw_mzkjTtsA6W=w1236-h658-l75-ft


  1. Place one end of the resistor in the horizontal penultimate hole under column 21, and the second end in the 2nd hole in column 16. *Note: The (thermal) resistor is a  resistor that changes its resistance with temperature. They are made so that the resistance changes drastically with temperature so that it can be 100 ohms or more of change per degree


aiIDlfGCNDN7NQmhT8sT1oMN19O9M46oup6pXsEcamjGmUHtHn9LTcWcIz2FUM9qScuJjvX9GeSw8bOdKweambv5OGT0V9AgiCqVNUHjQV5A60BEfNaRLIQhRKNMCQA8GnvcwTfviNJGeRspEwTtIisT2GHiDtGzhbWXpClsMOTxtJYgM-qzCqonq-tSHhw-GKxlu_IhZbA_ZupyhkWyOLz0ROeFMzGZ8EYVIa7RCQ0pnuwug1z2qAiKWgCqRusP3sBlbv480UwpLxSHLbqqzOtsW5RvUzV-qB1vsGaLPLuVOvNnKaWlPeDZFi12FgUSKCOTh1XTj5gPmtJEoDM6ULzfo28TNqlAYDhagm9fUtLCP5hUpFvonZiVpVkTqPCVE-ZhpOK0JY4Hpi-M-63RJiOATIBxT9vItw9o8hneHwtooeNpcVytcMafwxbbmO422j5RQ_Jm-8sTV3IUKzt8pso-WpD6h1aweY9-UCHEGl6jHM4fOB2lPn6P1ZZdn-u-tZvwsrTgnuGSluYznbg1xaagaMnN7uKYJ0dbgFMwwctXaasHSQ1Pcuz6v2A7afCbTvbR-kCHqMNIXt-OqrmCgSUx1rJ3xXhi9ew2UCPNQy-bo4kRuPJ4d40VUTJYl688Ths_fb9YKMFKV71XAkTXlYf_2dekAo7543Mbz4nz3UIybrPGl262OlKbLLnAxE_btw3ktK7DFX5q=w1236-h658-l75-ft


8) Take a black wire and search for the + and - ports which are at the top/bottom of the board. In either of the two ends, insert one end of the black wire into the positive hole and the other into the positive hole horizontally across from the first end of the wire.

UoAfHHsZvo6NK2S86XSDgy2Z5qsASzCbMRpMNg6adzLZsoW-CxdnB93po-m13PjzuJlwZ6oDwaZPcB594jMPOl2Rgr8zqrjxSHlaV0IwiK7vbb5ZzrHRSlzsRHhHI5TZOv6NlnQ5O5uxUmd0VpFgXHFXNHHGAWpM9jqosiGqRw0UlseDv2LxiVCXhgbRzK6mEvF1yD3yGlVk9XCjtCl84axMLPoRf5O3WZ-2T9v3QUiF-m1NbQzu47m8ehkvvNUR3hsDayRAPY8KiqZYtP5o970giKjRQyfST0tKdIEnf9ouXNvz3LMPuWjqUZoUAzFERC85dP5X9txHe6qp2xUrPGZsy3JG_I3d1ZYJ9023J9WCMccwTVZMZ3Sa9IMGiil8Fr16R6fYFViVjMW9sfJy-L4j11oUsM5Y73As0JLX6ILXwWOteoZpJfoQmjzsrIdKP8Gqv-nEjkhu8HTAiuDB3D4Oog9y1Uo9JzXHQ1u1Cd3pAYI3h5xebB9797MzNTYo6PAZAwV34ZwVwaqtIBbJgijA8Unhg_7LoUU0sNjG3WUteBjqndeMNLW_5qAtKOeacuVUzsV6F0oLut2Q6pnA3cWGLcigxJvhBJYvpmfokjRi0oHoBL-fseDujSIRNscDuk2W0qNsp-Q40qpO1r7SH6cDb3gSLgPdwPxhV6MLFda5qj-M2iZ-Q07yUMgUR_BE12I_GTLHrCVk=w1236-h658-l75-ft


  1. Next take the red wire and do the same method as mentioned above, only plugging the wire into the negative port.
  2. Take the 2nd black wire and plug one end of the wire into the first hole, horizontal to column 21. Insert the other end of the wire in a GND hole, on the Arduino shield.
  3. Take a blue wire and plug one end of the wire into the A0 port and the other end in first hole next to column 16.
  4. Obtain the 2nd red wire and plug one end into the first hold in column 15 and the other end into the GND port(next to the black wire).


syWpTJ5cilj2Z7oNYNkZt3KQJZrqU9Or-NEQqPrHkLZr9hJ5-rjZ_HQdED08rcpTAeEP49gTKRhs3BwfXc39HRsHDD0k2wZ2q9W36HveUt3GMPK1w8IaJaaDpwWOfZcRUnmtdeYrZcD7eyzVnp4n-jOIdtfL4EVdzMZ8QEintRNnfP53rNL5o98pkYdsxEGTlud0I_D4OjEOY-OWMCoaN1UD6MUaaP_NHb7EcO_sAPPmJbuZid2KNxAHSGNuFWv1Prw6h96O6_T8mskrbqfjCgp6NsYu_5drV77SoeGjRGS48bX_5prdPHTQlhZQUjnovr1HZbaUvZR6kW_4rRfTd14_CQZ1NG5ofHvZV3DDN1cSKJX-l0bbFrZTtXZ1cegT5AkeRBWICyzO33qWjec9vHJYo7bJIR-NbpzIqN3Xydn2d5RQuBeYV9_7O_vLumllufAZQl6Bf2weHp2GnPktuZy6gOxgObBiDqX5rTxU39rg9PCD0DK4t93l8MCpEY0AA1kL7fCYCzQ8AVtcH04Z_la0IaPpQbKudTNqU73bVwNOpfsK3MuNKyuNq5virFeNiRkyCxMbvXecriGb3AmiauWV8YCI7yoJtCuwzT44EOhUM0xRrZZ-0JZ_DaGma_6H8vA5jYNbJvq8KNvo5JLGPS07M_h2w3TujS-qULWcIO0LWaK8rg-kHDq1oDoIOElw29neP1LOtYH5=w1236-h658-l75-ft   Ywdr-fObasx626QP-0nxOMkxA35zMNTC_2Yxx4aOeoaSpRe2JbEGDr7V2v6kBTLDlIoI_6eWT1lie5Z3ECwE0CJqquoFJcXV3pQCYjStRFrCKFK0tDrIxtCmjCW3fTeL2es5lknp3DGz4cRpBDaJ6do-amynjh49opEJ3K8Jpr7L-K1McffxOU_umN9KFRJpWjLBE4w8ApwFjNtsKBMIYVfeZnZ9ingLqR0TE9m3UoK9uroQ2XIhtDaDDBky9x4u2oMWR3jJIODwgigdrhVuun5AnDjP-6bbToSdnAz25nOhGCblQHLGjYups7nqLzL1GVTHj-9LBPLt6nDBvD8EPMphNLrWO8-b0EU1dLEOGA4utTVanr2VJ8O_NByqjUWdJ9gFZXcgcIxMskqc13TJ4UZFvkcnwaPufmwmKlDMwm2wQUewSz13fnNOcuOE0NuF943cED08qhlvzYFjfXFPiHshG1aTBGsMBCD8iQ4qjay3Rnqs1tBcwkuHEitgOGkyvdfkVdQDBKv8gzhlky5RxOaC9VfojxxeE4Yz5YtM4VD_bgPIDF0dHhM7J0QFiGDjj-YOzgu50AFKp4SSp2j54lGZwikRb7qryUUijyqVD0Bn63QzkL8c0xwaf778lt8ux7vJHB6zHHq9y_JGJPiaN2Eypvqhxa1ilb05Bba5CSSLdsd6QngbLrv702hx94MvV2mgJlx8ia-I=w1236-h658-l75-ft


  1. Next, take the temperature probe and unwind the two ends of wire at the bottom of the probe, so that there are two ‘branches’.



  1. Place one end of the temperature probe in the last hole in column 16(parallel with the blue wire) and the other end in the last hole in column 15.  

MFuyZgZThnvBYWIOFyfD56fO9EmD12s3bnRLDZBE1fRTz6FkU3yXDIi6al9ZZ3Azg9HwYAyOYPe2U15fBBy0qc7hPLGxY5V-CQXf6_yUcz6oocATW3xWuk8yoW6wrXQlGmXFE-msY3ow8QopVh-DxjQrP7mhLEdQ_szffLdVVVxiGJ1VpT-GZ8WmUxYOD2SiOTKntCzN0Ygxb6Tf7X5AxTuwsh62BiY_Y752Tn1NXjq86_DDxVCDY5uLhH7vzioh9TFdlgLgh0OPQ5q0D8Yth4elZOlAdcQGWy-MjMG5LulWAYqnaI14UoN9xMSbw4umGTcxuHkbJpx7XkW9j13X6dk8jXl04cZrr37RqFTDdr1KVutJj4l0Q4yLXH5mnE8fmZYp8rg33KKWr5payUnLi7wA05K4j363wFpnR5jafKDskoCGYw0hAn5-SN-womdNxPXMq6lst_lyComijUUfucH9tJS2oFrCHOsozCx_0Z_Gz7hzUuzHXCb_aqbzo3xvDtK4VeUq2YgHTLYNpI4pweKvVEjvO-XIBbpeKCFWWNhG_Wx8XGAtrS3w0JVdaHXgTORQpxXZ3ke4xjb2ez3FQm3Fd_cq7TcahxkrevcpzlmVaI2DpYYsNCF02IRPmvfRYA5e-Ckvs6elAlNFh_9ajPxdCTHfPjucgZ2VrASYA7VbvJQGA128vLgz_TQkt-NdgHA4kqo-Zjuh=w1236-h658-l75-ft

This is how all your wiring should look like:

ZqQvytwLaiKCihEM2ytxQtec7VZTmvEVzUXxutWt35POhbFedhmdSoZMJJRC2nXWz3dQDgXNsfxjePpVRSKTId7lL3EjgXwV7xs4e4aF1_z_iP2SncmdNOvuyfd01pfdGrNY6s6MNJ9zW7haW8OLP05798mwng5c1h3tqWQkaP-mKN_6pc73uhsWCoZKOwv0FJ_kTODnfmLcm_VPONMTaOevIuCjgfaelvqXH_X0dldm33GmF7dtYXs0f8TD1D3_0FCfhCLGMGe74sMn8UUDlk-fUSn4ngAEwy8meGTFs9jpiI_pkbLjBoIUucEvgE4fChexFkQoVFi_q5B3vu9BuITbRxoYE0Z_tLzwyPgY5l7Xvji2KmEtwAZiygT4yl0377YJFIog6-KCZvDtoYHj-PF53x_VEa8_5rZW1vHldmKWQpf0QoMKs2maIOD5dgpUXrjNam2akj61YuhgYgwKwPeYXOwtqfNKuoJITEFiX9VXLPK89tavwt_7_yo1VH3d52aKMcerhjHiqPKsFRsUD7mEiR8_9XrIEsF7EP1HDdWVOioWf6A5iEv34LVVs5eatThe3WdVLjYjI3FpioOnf4QZe3gqTxsUIQDoPXcQW19V1m7jvWLRl4BDiBwJaC32OUk5lUSGGxyS7Q9lGMRIXrQBBsRU-XSZHXqH0gofSFe0djgS8mZSovNtIeonDyvGER-sIO8fcqG3=w1236-h658-l75-ft


  1. Double check your wiring to make sure all of the wires are inserted deep inside the holes so that the board is able to carry out its task.

  1. Download Adruino from this website https://www.arduino.cc/en/Main/Software

  1. Open Arduino and copy the following code into the document: #include <Ethernet2.h> // Used for Ethernet #define THERMISTORPIN A0 // which analog pin to connect #define THERMISTORNOMINAL 10000 // resistance at 25 degrees C to calibrate thermistor #define TEMPERATURENOMINAL 25 // temp. for nominal resistance (almost always 25 C) #define NUMSAMPLES 5 // how many samples to take and average; smooth out reading #define BCOEFFICIENT 3950 // The beta coefficient of the thermistor (usually 3000-4000) #define SERIESRESISTOR 10000 // the value of the 'other' resistor // **** ETHERNET SETTINGS **** byte mac[] = { 0x90, 0xA2, 0xDA, 0x10, 0xA0, 0xEE }; // MAC address of your Arduino (must be unique) IPAddress dnServer(10,1,2,2);// the dns server ip IPAddress gateway(10,3,0,1);// the router's gateway address: IPAddress subnet(255, 255, 192, 0);//the subnet IPAddress ip(10,3,15,1); //the IP address of your arduino EthernetClient client; char server[] = "10.3.15.14"; // IP Adress (or name) of server to dump data to // **** OTHER VARIABLES **** int interval = 60000; // Wait between dumps int samples[NUMSAMPLES]; //How many temp readings go into the average reading char sensorName[] = "Pfrape_Arduino"; //identifies this sensor in the database // **** START UP SCRIPT - SETS UP ETHERNET AND OTEHR THINGS **** void setup() { Serial.begin(9600); Ethernet.begin(mac, ip, dnServer, gateway, subnet); Serial.println("ISKL - Temperature Drone - v2.0"); Serial.println("-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\n"); Serial.print("IP Address : "); Serial.println(Ethernet.localIP()); Serial.print("Subnet Mask : "); Serial.println(Ethernet.subnetMask()); Serial.print("Default Gateway IP: "); Serial.println(Ethernet.gatewayIP()); Serial.print("DNS Server IP : "); Serial.println(Ethernet.dnsServerIP()); } // **** RUNS AFTER STARTUP, ALL THE TIME ***** void loop() { // if you get a connection, report back via serial: if (client.connect(server, 80)) { Serial.println("-> Connected"); float tempC = getTemperature(); Serial.print("Temp: "); Serial.println(tempC); // Make a HTTP request: client.print( "GET /add_data.php?"); client.print("serial="); client.print(sensorName); client.print("&"); client.print("temperature="); client.print( tempC ); client.println( " HTTP/1.1"); client.print( "Host: " ); client.println(server); client.println( "Connection: close" ); client.println(); client.println(); client.stop(); } else { // you didn't get a connection to the server: Serial.println("--> connection failed/n"); } delay(interval); } // **** FUNCTION TO GET 'AVERAGE' TEMPERATURE FROM THE SENSOR **** float getTemperature() { uint8_t i; float average; for (i=0; i< NUMSAMPLES; i++) {// take N samples in a row, with a slight delay samples[i] = analogRead(THERMISTORPIN); delay(1); } average = 0; for (i=0; i< NUMSAMPLES; i++) {// average all the samples out average += samples[i]; } average /= NUMSAMPLES; // convert the average value to resistance average = 1023 / average - 1; average = SERIESRESISTOR / average; //Serial.print("Thermistor resistance "); //Serial.println(average); float steinhart; steinhart = average / THERMISTORNOMINAL; // (R/Ro) steinhart = log(steinhart); // ln(R/Ro) steinhart /= BCOEFFICIENT; // 1/B * ln(R/Ro) steinhart += 1.0 / (TEMPERATURENOMINAL + 273.15); // + (1/To) steinhart = 1.0 / steinhart; // Invert steinhart -= 273.15; // convert to C //send value back to the caller return steinhart;

18) Change your MAC Address, IP Address, Subnet, Gateway and DNS to your designated numbers in the code above. In my case, my values are as listed below. Also, set the resistor value to '10k'. MAC Address: 90:a2:da:10:a1:0e 
IP Address: 10.3.15.7 
Subnet: 255.255.192.0 
Gateway: 10.3.0.1 DNS: 10.1.2.2

3N0If_JEISttnc7tQnkZl-gitjxs3PcSZLvWRXypHCwTK1JAtfFC2_IgYd7Zn14CWuokZpILn2EyGk13LwMDWgcX2IoNZ1Lo4QsIvbqSVLcEKYwzNP784oHq5xbc6H2fpDDLvvVOdb49TjCLZriEi9-q8r9WNuM7TJzB6vn1G5uTDc2EHOMOX34HBWZvkYMcZUGqDTEA-BdOPXiRKCPtfIyqb0kKmFq1oQrqkowhTWopZlJmOowVhZVt962-tQZGiCnM1dE3_9vQR0bUM-lM7QEaww8qV8kr-7h11wSqtcyF4o1rkQu8renW5SZuT7QG8Slakdx878WxvnGu-HGr6zysThKfTgzsXLB0GSmuSwMgqzx71o3oAWWQqYGFyn4cPv8Hy9GpTl1XDm2xsesisCnw2PEpoPemnPzrXgaPRy6m_9V3E2RQUFaVUW4w-StJm2xZQoKg8900qRQqeaLzk152tfK9taGB2zA42foc5lMpP5pbf-9wRcSnxtushvu8JZJEhJ7L6MaXsKVy4XpVWr9SXIsmcpbFF3Rk7mIqOBi_Nr9B7rL3Ue4JzpVujGgAxr8UniQBLqX5dxUXi3Nt-e2ONpMpuTwXQKW-F5Ev5SEAed46kgqRH_MQ-Vd0mD9aIFYRkaNQuyTr6xBHQUs-nbANvLDJ4cT3631ed2CPmFEUAOSq8NeY9a3lLSWrgSzLkMm5knoewZ8J=w1236-h658-l75-ft


19)  Next we need to use the ethernet2 library for the Arduino Shield 2. Go to Sketch > Include Libraries > Manage Libraries and add the ethernet2 library as in the attached screenshot. Then you need to change your include to: #include <Ethernet2.h>
view


20) Plug in your Arduino cable to the board and your computer to transfer the code. Once connected, go to Tools> Port and select “Arduino Uno”.


B62t6SKVKDuZiAW71fchZVHjTSH4o94K8IDJj4sohAf4ms4tRBmfJ7ZWSXPQquMD79KPGbXm_4eaZCNGoLLHPDeHBxw17TOsVKhz7rGWg3PoWDQWtfnAmvrkQUV1qQT789MA7H0wlA7o-MgGxrXkdwaBQL_YABI8W_6Oh1l44Cex5DQEFVDzfF5u474fHDKLBLlXBSBCHB7s9HJ3PButgwdg-9kgG2D3JjAPK2zTXZHxgBo6sCzOZm_S7wWl5PHrYIvqVPJabJAtDm5xyOLv4-uteKlySFv-iS2UXtdcNXmnuid80kRKmZoLikipyJTTZGUushQ3kF3rWCTAHqW-cern2rYZOOT76ulWJfcMZe0o7LFSI1rJ2gT6sOCvf85CbsGRWSNMvhDUxcaCYd2ZLO90Ez0nqWt1trc7OseKUePZ2nDQ-XBmP_l_Rioev3btQCMuy7QQXde36YSJMi9NG52GxtO8HkvSr64BUIQf5gdxfGi3oe43hAOykh8NYX8_HLER9sWcQXcBgT21-V_WeKG-NxhJUt4AyrLnjEvBQN2XUTrgGFbpKLjwKMpc9vR7p7XqxkAXiiIoW965-xaF5xqS0KTMzQY6cibPVdtuWMkrpwo7HTZO-KeGy4lSHVz3ObJKk8cjMPimBThLwTscf_eKNkhvwFqnvhWYYXzsPwTQkfiByN6EdRJMkhZCVc-IKYQMzluLMR7N=w1236-h658-l75-ftBCOEhCdknsskxsdVSiv8fweH6M0oTvklnUJ41zAleA2A602Hi0NUXTAl0QR_T_ec48VtgslTQPLomwRM4-iaQOAFC1lvRWUVESHBnEemIbpTe9-gMcpPSD99FbX68aqfl9NWFQW3PQTTLHo1X2PU7dwLFaepo9lqhjOKSqhxPmBj_Ln4WgwgRiY1544UJxtDl8GNTSNK9VAEotoc930g9h_TNF6C5yEndmgHbejZ-NqyJaze0zkhHD-Hc7KWuq1T7gTgcWM775Sd8hdTaAtEHLGbpHLJL1yyeH8_cc2ghidQUAjn8KL3P0h5aNNIdmd8TA59HvAqlKe21_ICioMjn-DAONIBBOfUAWDE58fU9phc--kAUCsp5ImC4pthSJyinaq_2qzwNS9xxsUPqng_vsrtXIecsq-pI-LSwVsolVgr491i_jAvI43WypLDAF7xsOABdNJVNwEI3HnM8I_SuKzsm1qpv7PYb9OIZJRp6TLbO5K5KhsIn5DPqZV3Bckz28PQn9OIPmW_Cm5vNL9vKuEdaJsKozSXvB7cVu6ejVLoy3s2cnM6BzUe7H8GFEquIjZ9KqrZeocomy6icMw07dWgLxDgQUWxJDoC-hgOO0AHbLxgirZQiswSVYmWWCdM3uOGVIf7uw5L-ZIr_6Mhrwba-0c4NWh9dV4tKIVb_hI5_D4QjCgijViuBt4cx81jHKYtIiOpHXvp=w1236-h658-l75-ft



21) Click the verify(checkmark icon) button in the document to make sure the coding is correctly formatted. Once it has been compiled, hit the upload(arrow icon) button to transfer the code to the board.

22)  Connect your Arduino  Shield to the switch(ethernet port)  near the wall like this: Note *
If your arduino is placed in a different room, use a power supply to power your Arduino. Search for an ethernet port in the room, and then connect the Arduino into it. A power supply is is an internal hardware component that supplies components in a computer with power.
view



22) Open the Arduino serial monitor and make sure the thermistor is measuring the correct values

CEfZQvP1bYTLgtKOW0N8OowmyhcAiTEcuu0tAq0MW4BhW2nEn5ZIC2Wox2B7r-sWuYeS_1Hmhpq3IHEFEAvwU1HcRE3WXkE-MFeGylow-4k89oQwb97yRdY2VvQiyH6dMxmjCOAqDkSJe0HUH0Hxuof4NSwrROCIgLYfgUwben-s5U9NJ5PLBaA7YF9u3yIEwLhcPcHEPPKyAJCOcf-D9swOODub6cQM_ra7E77q89v_Y41HIOx-LFVw4NqU-2aPfAYzDd1D2Fdy07Ll6_JU1vJRGSN8o6N0lLhf0msIVI8KThzYo_Rv5eFXLhKIOI-zR9Yf-891euNSeBFZA8Tpx7s0OfXFo0tp_oVSVhgDmAeRfHWBLsn_mFj6zledtxRfKb4_l-X_FX8a1ejaPQ7SfTnDhlVxM3tTGdeZsrLAwM9V1gXj5QgsDzCCdpaNeu_2-ZrhnhtrsfH5iJ82RpslfpRRef2BCYC2XdhBkBXNJPyc2rDsiPaUNYKvfbcfFcbRORY-oByx71X18JMM4udmG0MkNUtb-1CtniHcZq8_5TAQWaF1w8QUcL1GjzjgzrZC1BTt3OpUYJCEGgakGDz5pJHp-ViJYN860Xg-_ljIE65iebWulFVG6LYHpbxyAd01_MffSSp5JYOCuNSpCwtXuJb7n2WQT9n-f02O6-RvxJp_v8Pw8nER7UQ89Mf6JNQ2VsuwA2jsJUVZ=w1236-h658-l75-ft

23)  Next, browse to your Arduino’s IP address to see if it will serve up a webpage to you with the temperature on it. If it works it will show temperature values such as the following:


4hn7EeJAI0-y2RkxwGpoLDRLc9NOG6mhON97S_X7z1whjcrg6L3B5d4-0qEnJxkiBp8N_HZ0HBgB4Cyomj2dgL-xxpEKmv77L-2Jlk1y6dB2uKmVk9YZoPj4E_MidoG0hEdGX2btibiCdHguZrvsFiWY2u0AehAFAulMncoUak6jPsMZz_46MOv6jgjRvcTKQgMHLwy7F2rgCWK0fthcBBMfsKlhJa65Q9bX1intdd4XXohkKjBTxWBp8m8kyx-HfsoJbsuoJGSl1AIX3v2EAt6eas2DxnkKkga9Bd6sb8bRfhU5UAv6CQDAlXc_c-BsJNUk8_4BkLkUFsoEeHCn8UCxZ_R0K3hDuncTdolKJPwPfP1hvpBfC-Xn7HIKQvsyfykSmwcrM84iD7hRe8SumA2TrFFozVuqjnhRFutgNA8UPZekvqYzryIoNykgiUZgg_gh0z-eABf4mPal1XxJu-SRD_iQrZgZP9v9EHvFm4u3SFLOOkc9noU5h7clxACQcWdahy6_p94SuLQx-N-rVacGJzyskFuYgv_t2NXm5PmmlPr3YnNW20Sl7gC_J-e5RHrqNW3O8wguGfFCrYBTt9AaD7j5imhwcSGdnHwC_RRtLAYn7WJzKBwjQlU7qXGNg4vrWpDtRbxLA1CRRo_WL9GHj-MUlwRCnWgR7BpNwwRS5O6ZtAYfeigNKW9p5mDZr_SQ1UIqs63U=w1236-h658-l75-ft





*24(optional) Decorate your arduino to make it look presentable. Be creative! This is how I did mine!


4iFldY0XBTYGjR0_ShdNud6s8u8rua66HcQGTcVAu6EFP7dhmTUsIlRzwv3ExiClDnjTJT-rHowd8HeeOmpRSExU469KlCi5OlhEzeeXY8N6z-ifAxlRA9OwA9jTwmemGOBJ8GSrzdKcVX0yCvYnpFkL9Rqo8dx3jopFtQqtYv9XoIwAgM4ptcC6zqnwOpj3ZTaQLcu8IqBu8Sev2CkIQjtCIZHaS3EZGhGgz1aTCN9c_tXm5Lx5iLHbsKVmMWIu_QHVenRE7AFW4n5ESw56J1z04OfYC-JlS0PEdOSd5pqLahUcqOhVp52kx-jo1ce-_Iphvb-NELDqvuuD0NXaHA06vIPtVOazwkWuxztYVD7ef94C0YYUND94_Jk4a_3q6AOCk3LSxuPXhUhiE0faSBi8X4yMBFwpHWYP1FiRD5Q-lSCJDzb9fVeMkNgfFtVmfI4Gmte-olWoStaqCGP_8CHOm5MDifwZyK6CpwodSJ9Qjlbn8Eb4qMoGx_ba7NMvcdfzxKSbteOveKmFKI9uU1ujVSlHppGoBso9AcB5TLh7J5jYjvgE36nCvf7kyVVxq9xI93CoMwXkhftTjVchUGdHKlLiRGf_aylcbouDcuHcrK_Tjc2e8E-tdJ1mWQ-c-lKhOKzoNS3sbVbMHG7m_8pu-DTGwK0BZuxP6CZiyw0pCsjZewDfuQ0yfcPUokjhMBpCJ183bBM2=w1236-h658-l75-ftVhzheGEFmp7Ohur0Ihd8YsoYzh2ZLLOFgfVA7X9Wnzgt5CmH9xfOqVJbtberTX0_1ZyUl7ez8MzXLWFqZpCc85Xz4xXD_vfbaFHCkPpVWbI6DrljKO9glCr300Ynm_8kLgurRRY1brh9Fzm9Rj7Vr7QRZpD1gzia4rU02T-wRw7TWDoGg1s9gIQU8_RUUDvC3865XfOkliFN3Va-NUBS8os71nqbgHziiZGIvmbnHd1xp-O9nCK5AxlWpl7TUzPlJTjUgsnl7EZoZqovvTiNay6LR1EoclDkWzEZ6u4o-5InqoHhEsHuQ0fhVl-6qS1GIt0m6CtADLqM6oG0j50EMlatpyZf7EtA1f-L7A0hY2CKG7G0EZPPYw5aBRfiSciKFAGhRbd_cy1Hl_3sseqGdt2SSYlAfCM7w0m8BkraYbrra2id_ArDF_fp-t1RiLz8oBsLz30HMDWsODS_g3wnS8-EzsNHjUEloiHP6ZURHJzrJd5a9TSjWX3xS8d6i9oraKHEJaYr0RVfPmTpkmOyTI2lyevuXVZd5cD1sUdAF7cjiLt55Kxr3ZN5PxfTxEfq5X7abRBkS6xFY4gM9__uidtT5ecX60PRt4_ufTbZ4U4BS1MXoWkRjb7ZaWIlE0YXRjRVFmw7wMDnU6PEGH-B4WbCprd-i2VKF7bB78gZUgyJVp_1FOTtAALdLBg5wMKU3egTsrWQtgt79m7ASA=w1236-h658-l75-ft