Rama’s Status Report for 4/30

This week, I primarily focused on trying to implement feedback from the user study and helping with the final presentation slides. The users noted that they preferred faster speeds to make up for latency problem and did not mind the jerkiness that came with it, We were not satisfied with that so I worked on making the speed dependent on how far of a sweep the projector needed to make. Adjusting the vertical motion has been difficult because the system is more sensitive to vertical angle changes. I also started working on how we are going to make speed dependent on distance from the wall.

I feel like I am on schedule and this week I just need to add in final changes to speed adjustments and clean up the wiring. Once we have the USB extension we’ll be good to go for the physical setup. I will also work on the video, report and what we will show for the demo.

Rama’s Status Report for 4/23

This week the replacement motor with the higher torque rating came in so I swapped out the overheated one. I tested it out prior to replacing it and it was working but when I attached the projector it would fall over and fidget or was completely unresponsive. I thought that maybe the torque was not high enough or that the motor was just faulty. Later I took off the projector and retested it and it worked so I put the projector back and all is working correctly. Now we are able to fully test our system and I have been making adjustments to the functions as we go. We started the user study and I have a plan to implement the feedback we have received. So far it seems like people prefer the cubic curve over the quadratic curve, and faster speeds. Lastly, I have been working on my portion of the slides for the final presentation.

I think that I am on schedule and have replacement motors in case anything bad happens. This week I plan to implement the feedback from the user study and begin the work for the poster.

Rama’s Status Report for 4/16

This week, I properly secured the projector so that we could begin testing movement and calibration with the added weight of the projector to the system. Sadly, I think the 6V rechargeable battery I was using was too powerful and the motor for up and down movement at some point during testing overheated. I put in an order for a replacement motor so that should hopefully come in on Wednesday. I think this is putting us behind schedule, but on the bright side the basic system with up, down, left, and right movement was working before one of the motors broke.

In the meantime, I put together the tripod system and switched to using 4 1.5V Energizer batteries to power the working motor. I also helped with testing the horizontal movement as our initial setup was fast and jerky. This week, I would like to continue working on the left to right movement and smooth it out. When the new motor comes in, I will swap it, properly secure everything to the tripod stand, and quickly work to find a set of speeds to test in our user study. At the moment, there is an anticipated latency problem between when the user moves their head and when the projection moves, which is why the  projection moves as quickly as someone moves their head, leading to quicker, jerkier movements. The tradeoff here will be using smoother and more natural movements of the projection even if it contributes to the latency problem.

Rama’s Status Report for 04/10

This week I have been waiting on orders for parts to come in so I can start putting things together. In the meantime, I have helped figure out what we should test in the user study and cleaned up my code and added documentation. I think that I am on schedule but if the parts take any longer then I will be behind because we won’t be able to properly get feedback on the user experience. This upcoming week I hope to start building so that we have a full setup for the demo on Wednesday. I also want to help with the refinement of values for calibration and motion as we continue to improve and speed up the full pipeline.

Team Status Report for 4/10

  1. This past week we continued to test the full end to end pipeline as the calibration code was completed. The system responded to hard coded information about where the user is in the room to set up where the projector should start. We also tested a possible lock/unlock feature for calibration using blinks. If the user blinks 3 times then the system locks and the motor will not respond to head movement. The screws/mounts for attaching the projector have been ordered but in the meantime we will use heavy duty foam tape to test out motion with a picture. The next step is to do a user study on at least 10 participants. What we are looking to learn is which easing type is most suitable for the user (linear, quadratic, or cubic motion). We also would like to see which speed is most comfortable (30,60, or 90 degrees per second). Since the projection only needs to move for significant motion, we will need to figure out what the minimum displacement of the projection should be to trigger a movement in the motor. Lastly, we would like to see which lock/unlock feature is best and if we need to add other lock/unlock features to better the experience. The main risk is that the motion of the projection ends up being too shaky or jerky in which case we will need to slow down the movement and use a different method of securing the projector. We will continue to refine threshold values and gather feedback as needed.

Rama’s Status Report for 4/2

This week I continued to fine tune the motor functions and finalize orders for parts. We were able to do some end to end testing where a person moving their head either to the left or the right during calibration would make the motor move all the way to the left or the right. The motor moves all the way in either direction because the boolean variable needed was not finished yet, but we were happy to see the full flow of the system. I did feel behind schedule at the beginning of the week but after seeing the full end to end, I think now that the base of the functions are done for my part, it is only a matter of adjusting the values to match head movement the best. Whats to come is doing a “user study” on at least 10 people for angle, speed, and easing types. I also need to secure the pan and tilt system to a projector stand, and the projector the mount so I will make some more orders for parts as well.

Rama’s Status Report for 3/26

In the beginning of the week, I simplified the circuit and found mini breadboards to use in the final assembly of the projector stand. I wrote movement functions needed for calibration and wrote a draft of the functions needed to move the projection given the information collected over CV. I attended the National Society of Black Engineers (NSBE) Conference in Anaheim that started on Wednesday and I will be back Sunday night so I was not able to make further progress than this. On Monday, I hope to make the last order for parts and test out the draft functions. My goal by the end of the week is to have the physical system assembled so it can be properly tested with my team member’s work and code.

Rama’s Status Report for 3/19

This week I set up the circuit and found the angle and speed ranges for both the motors. I also confirmed the power ranges for the motors so I can purchase the correct power source since we are powering the Arduino and both motors with one external power source.

I have decided to use the ServoEasing library to control the speed of the motors. I tested out linear, quadratic, and cubic easing of the motors as well as combinations of these types. I also tested out the synchronization of the motion of both motors to see if it follows natural head movement better.

I have created a file in which different easing types are used to move the projection so that we can do a small user study and see which motion people find smoothest and most comfortable. I have also worked on the functions we will be using for horizontal motion. This week I hope to finish the functions and focus on properly securing the projector and cleaning up the circuit so it can be secured on the stand.

Rama’s Status Report for 2/26

My primary focus has been on the design report and coming up with possible designs for the system as well as a more complete list of parts needed. I researched different projector mounts and stands, as well as robotics materials. I decided that we should secure the projector to a plate that is attached to the motor. From here, we can add attachments or straps to the plate to better secure the projector.

There was an issue with ordering the motor off of Amazon, so we had to buy it from the supplier and it just came in so I will be able to pick it up Monday morning. I plan on testing functionality and motor speeds and writing the base of the functions that we will need. Once the connector code is done, I can test out the functions with hardcoded inputs sent through PySerial.

Team Status Report for 2/26

We finished our design presentation and began working on our design report. We finalized how each of our subsystems will connect so that we do not heavily diverge while we implement our parts.  We have also decided how to approach detecting if and how much a person’s head has moved. The hardware will be ready for pickup on Monday, so we will wait until then before picking from our design options and next parts orders.

The biggest risk we have right now is falling behind schedule since calibration will likely take the most time. In order to avoid this, we have prioritized the design report since we would like it to be as thorough as possible and would like feedback on it before it is due on Wednesday. We have also set up more frequent meetings to make sure everyone is attempting to make progress throughout the week.

For the upcoming week, we plan on wrapping up the design report and ordering more parts. We will begin testing motor speeds and facial point detection, and writing connector code.