This week, I tried to code on Arduino and had a sense of digital input-output and analog input-output.
As to this week’s lab, I tried a light adjusting LED, which would emit stronger light when ambient light is weaker.
At first, the value that the light sensor captures varies when there is a different environment, I have to manually change the maximum and the minimum value in the code every time.
After the office hour with Tom, I add the calibration into my code, which would adjust the maximum and the minimum light value of the current environment in the first 5 seconds.
The next problem is how to make the light change more real-like. I referred to the example of BlinkWithoutDelay, used interval and previous sensor value, previousMillis to make the LED adjusting light only if the immediate change of ambient light value over the interval at every interval time.
This way is different with calling delay function. This video below is the demonstration of adding a delay(2000); into the first code.
It’s a slight difference that when I used delay function, I delayed every loop of analogWrite, so every time when the LED were adjusting the light, there was one or two middle level between the current brightness and the target brightness.
But, I still want the LED adjusting light more smoothly and slowly, that is a problem I need to figure out.
I observed the PATH ticketing machine as an interactive technology in public.
I actually take path every day, so I have experience using the ticketing machine. When users need to refill their metro card or the path smart card, they can use the machine by clicking the touching screen, following the instructions on the screen.
I took videos to some passengers who were using ticketing machines.
Obviously, this woman didn’t successfully refill the card, there were some problems when she inserts her card into the machine.
From the video, we could notice that there are some steps to refill or buy a card.
- At the beginning, users should choose a language.
- Then select card type.
- Choose refill or buy a new card.
- Insert card.
- Pick how much you wanna refill.
- Choose a payment method.
The easiest part of this process may be the steps 1 to 3 and the step 4 and 7 might exist some difficulties like the women in the video.
Also, I found that the time varies depending on the way users choose to pay. Cash is the fastest, and if users tend to use a credit card, there would have some potential issues like card readers cannot read or users may be required to do another extra step-input the zip code.
In my other video recording other people interacting with the machine, you would notice that users who choose to use cash are much faster than those who choose a card. And even the latter encounter other problems that make them fail in using the machine.
Recording the reading, my point of view is to add more specific instruction somewhere that users can easily notice and understand. Plus, to help people get what they want as soon as possible, why don’t separate the function to 2 or even 3 kind of machines? For example, there are machines only take cash, or only take cards, which would skip the step 6; or we could have machines just buy a new card and machines just refill cards, then we will skip the step3, etc.