Team Status Report for 2/24

This week, we solidified the mechanical design of the stand as a platform jack as the base to change height and 2 linear actuators on the top platform to apply torque to the laptop.

We also decided to change our approach to the posture detection by using OpenCV instead of OpenPose. This was because we are more comfortable with OpenCV, and it will be more accommodating for incorporating libraries in OpenCV as well as integrate the face detection, posture, and interface all in Python.

 

Mary Rose’s Status Report for 2/24

Earlier this week, I worked on finishing the design presentation, specifically on the diagrams, the FSM, and the testing slides.

I then worked on refining and coding the calibration FSM. I tested the code I wrote for correctness, by manually feeding it inputs, and testing how it responds via prints. I am still a little behind schedule, and this week I plan to have the motor control/linear actuator code completed so I can begin testing as soon as possible. I also plan to take measurements of the design to determine how motor rotation corresponds to height.

Sebastian Weekly Status Report Week 4

This week I helped finalize the design of the stand by settling on the platform jack configuration with linear actuators that come out of the top platform. I suggested using a platform jack because it is compact and the actuation required to elevate the top platform is very simple (just requires rotating a screw in the jack). Additionally, to change the angle of the computer I suggested using linear actuators because these are the simplest way to cause the computer to rotate forwards, thereby changing the angle the screen makes with respect to the user.

I also settled on the method of performing computer stand adjustment. We will have a calibration stage where the webcam takes not of the distances between facial landmarks when the user is facing the camera, then when the user looks straight ahead, the computer stand will adjust so that it ends up in a configuration where the distances between landmarks on the user’s face are the same as they were before.

I submitted a 3D print request to techspark and it is being processed now. Also, I made an Amazon order for the linear actuators.

Mary Rose’s Status Report 2/17

  • This week I worked mostly on design. I created a document to help our team finalize our metrics. In addition, I drew up a rough sketch of the FSM for the stand’s calibration stage in preparation for writing code next week. I also did some more research on connecting to the Arduino via Bluetooth from the laptop’s side.  I also finalized the block diagram, which now includes some more detailed calibration information, such as a button that the user can press to restart the stand. The rest of my time was spent working on the presentation, specifically fleshing out our testing plan (Bluetooth communication, and motor precision).
  • I am currently a little behind schedule, which I plan to make up during the slack period I have scheduled for a week and a half from now.
  • For now, I will continue to draw up a diagram for the hardware, and next week I intend to begin writing the code to control the motor and linear actuators.

Olivia’s Status Report for 2/17

We have changed our method of determining the height to raise the stand from detecting eye level to detecting facial landmarks and the distances between points.

So, I’ve spent this week getting more experience with facial landmark detection with OpenCV by downloading dlib and using sample code to use the pre-trained detector to point out coordinates on my face. 

I have also downloaded OpenPose and looked into the documentation on how to use keypoints and distances between points to detect good posture versus poor posture. I have also been working on a mock up of what the user interface will look like.

Team Status Report 2/17

Overall Team Report:

This week, our team worked on finalizing aspects of the design. During our meetings, we discussed the materials we had already purchased, and whether or not we had anything left to get. Unfortunately, there was an issue with our 3D printed prototype design, so we will reprint it for next week. In addition, we worked together to finalize important metrics for our design, including timing, and power consumption aspects. Furthermore, we discussed some new ways to tilt the laptop, which included redesigning our stand so that it can tilt. However, we decided to hold off on this for now, and just use the linear actuator model to achieve MVP. We also worked on our slides for the Design Presentation. 

 

Part A (by Mary Rose Rubino):

Many people who spend long periods using a laptop suffer from back and neck pain, as well as eye strain, which can cause lasting damage. To combat this issue, SmartStand will raise to the most ergonomic height for each user. In addition, once it is at this height, it will notify users of a significant change in posture, allowing the user to quickly adjust back to a more optimal position. In addition, we will track eye movement, which will ensure that users’ eyes are not strained from long periods of staring at the screen. Our app will display this information in an easy-to-read format that will help users monitor their progress over time. 

 

Part B (by Olivia Yang):

Our project is ideated with the target demographic being students or professionals who spend much of their time using laptops and commuting. With these social groups in mind, we geared our user experience to be convenient for those who are trying to prioritize productivity by providing alerts to users when they are not focusing. Additionally, we would like this product to be helpful to such users by minimizing physical strain due to extended use of their laptop by providing adjustable height in the laptop stand as well as encouraging users to take regular breaks with reminder notifications through the user interface. We are also stressing the importance of portability and ease of use to further suit those who would need a portable device that is lightweight and convenient.

 

Part C (by Sebastian Garcia): 

This product will be produced using conventional means (i.e. in a factory with a high amount of automation for placing components into the stand’s frame). Most of the construction of the stand can be done automatically since the finished product would use a platform jack made of metal. Then, internally there would be a PCB with a USB transceiver and motor controller). This PCB would be built mostly automatically. The motors would be off-the-shelf. In terms of distribution, this product is consumer-facing so it could be distributed using the Amazon system where users purchase the product online our team’s only job would be to supply the product to Amazon warehouses. In terms of consumption, this product would be an investment in the health of the user. It is both good in terms of being a physical device and a service in that it improves the general well-being of the consumer.

Sebastian Weekly Status Report Week 5

This week I 3D printed 2 versions of the platform jack design we settled on last week. The first print didn’t work because supports were included inside the platform jack causing the components to be fused together. The second print worked as intended.

Further research was also done by me into using openCV to perform landmark detection on a video stream. A basic tutorial was followed but I had trouble getting all the dependencies configured correctly on my machine.

Further brainstorming was done on how exactly the computer stand will have the necessary information to adjust height and pitch. The method I settled on was having a calibration stage where distances between landmarks on the face are measured. Then when the user lifts his/her head up, the computer stand will adjust until the distances between landmarks are the same as in the calibration stage.

Olivia’s Status Report for 2/10

I have been doing more research into OpenCV and how it can be used for locating eyes on a person’s face. I was looking into some open source projects that have been done using eye tracking to detect if eyes are open, and I think these resources will be useful later in the project when we are trying to incorporate focus detection into the stand’s features.

At the moment, I am more concerned with the eye recognition as coordinates on the screen and in what ways I can use this information to determine the ideal height to raise the stand. From just empirical research and looking at ergonomic screen heights, I think that ensuring that the approximate y-coordinates of the user’s eyes are at the top third of the screen’s height should be the optimal height to reach. However, this will also depend on the distance between the user and their laptop, so I think we will need to incorporate a distance sensor in order to guide the user to place their laptop at an ergonomic distance away of about 30 inches.

But I would like to have more certainty in whether these are good metrics to use in order to determine the screen’s ideal height, so I will continue to research this as well as OpenCV eye detection. I am currently on schedule and would like to have these height determination methods solidified by next week.

Team Status Report for 2/10

After receiving feedback from our proposal, we met to discuss and solidify the details of the stand’s mechanics. We are currently thinking about using a 3D printed platform jack as the base of our stand that can smoothly raise a laptop by turning a knob. We found an open source design of a platform jack and sent that to be printed at a smaller scale so that we can see how the mechanism would work with our weight and size requirements.

We have decided to continue our design process with a smaller version of the stand since it would take up a large portion of our budget to fully 3D print the design of the stand with the dimensions we have in mind for the final product. So, we will use this smaller model to experiment with the weight, decide how much torque is needed to turn the dial and raise the stand, and how we can tweak the design to be more portable and compact before we finally print the full sized stand. 

Additionally, we would like to see how the linear actuator can be used in combination with the platform jack to tilt the screen of a laptop. We will then discern how we can incorporate this mechanism into our final design, and in what ways we will need to scale the dimensions to better fit our requirements.