Assessment criteria - 2284238y/Team-1-Fernando-Martinez-YI-YI-LianSheng-Liu- GitHub Wiki
- 1.Assessment of the responsiveness of the application in the context of the task / environment.
- Answer: In order to assess the responsiveness of the application, for time control: Assumptions about when the curtains rise and fall; For photosensitive control: The sensitivity of the photoresistor in the curtain should be assumed. If both meet the specified rise and fall requirements, the application will be considered responsive.
- 2.Overall latency permitted between physical event and output (control output or display of data).
- Answer: In this project, only one photoresistor should be used. Latency is not a major concern for this question, both of time control and UI control there are latency, maximum latency in the magnitude of five minutes would be acceptable.
- 3.What is the sampling rate?
- Answer: The sampling rate defines the number of samples per second that are extracted from the continuous signal and make up the discrete signal. And the sampling rate is 100-300 kHz.
- 4.What bus protocol should be used (I2C, SPI, ...) and why?
- Answer: I2C should be used, because in this project, each control module works independently.
- 5.How many channels?
- Answer: There are four channels in this project.
- 6.Low level implementation: kernel or user space and why?
- Answer: User space, since it is easier to implement (it is higher level than kernel), and the introduced latency by using the user space is acceptable given the application.
-
7.Data flow from hardware to GUI to output with data formats, latencies, processing and conversions.

-
8.Buffering of data: how many samples?
- Answer: Buffer need to be used! In this project, we use buffer in photo sensor control. Through the detection of Increment buffer and decrement buffer, to achieve control of rising and falling curtains.
- 9.How does the buffering impact on the real-time performance and how much latency is introduced?
- Answer: The buffer buffers the data to solve the slow and fast handover problem. The fast buffer needs to transfer the data little by little to slow areas. For buffers, the larger the space, the smaller the performance impact. There is a 30 second latency introduced
- 10.Post processing of data and how that introduces latencies / processor load?
- Answer: If unreliable sensor readings, increase sampling rate and create buffer of several samples which can be passed to post-processing and filtered e.g. median filter to smooth out values and provide more reliable result.
- 11.How many threads are needed and/or how can the load be distributed to allow a responsive application?
- Answer: There are four threads.
- 12.How to implement the GUI? Permitted refresh rate and latency resulted from it.
- Answer: The GUI of choice is a phone app. But the code for the current version is available here, and you can see what it looks like in our YouTube video. The Raspberry Pi automatically detects the UI button. If it is detected that the UP button has been clicked, the curtain will rise; if the down button is clicked, the curtain will drop. Permitted refresh rate and latency resulted is 30 seconds.
-
13.Structure of the software in classes, associated unit tests to turn it into reliable software

-
14.Team structure: which roles in a team of 3 and how equal contributions are guaranteed?
-
Answer:
Yi Yi: Hardware design, software design, write the code of the project, write all GitHub related contents, and finish Wiki, record and upload YouTube videos, make social media engagement, finished the PPT and presentation.
Fernando Martinez: Only gives the title of the project and write LICENSE
- 15.How much time is allocated to hard, software and debugging and how is this interleaved?
- Answer: The time for hardware design coincided with final year project deadlines. Hence, it took 4 weeks to sort out the hardware. 4 more weeks are allocated to software development, and then 1 weeks for debugging. The time allocation has worked out successfully.
- 16.Which version control software is used? How are releases / milestones done and numbered?
- Answer: GitHub was used as the version control software, used via command line.
- 17.What is the release strategy / publication / publicity? How is that measured and deemed to be successful?
-
Answer: Own Twitter and YouTube pages are used in our team. They are used strategy, publication and publicity.
Links of the Twitter and YouTube are below:
YouTube:
Photo sensitive control test 1
Photo sensitive control test 2
Twitter: @InteBliSym Intelligent Blind System
Some YouTube video can show the result of the project, in these YouTube videos, the motor rotates clockwise, the curtain down; the motor rotates counterclockwise and the curtains rise. It can be measured and deemed to be successful.
- 18.Measurement of success of the application in the context of the problem given and evaluation of it.
- Answer: IT IS SUCCESSFUL! Watch these YouTube videos