代写辅导接单-COMP9032

欢迎使用51辅导,51作业君孵化低价透明的学长辅导平台,服务保持优质,平均费用压低50%以上! 51fudao.top

1

COMP9032 Project – Clinic Management Kiosk

T3 2024

Your company has assigned your group to develop a self-service kiosk to manage patients in a

small medical clinic. The kiosk, along with its peripherals, is to be deployed as shown in the

floorplan below.

Your company supplied you with a development board that is identical to your COPM9032 lab

board, and you have been asked to work with your group to develop a prototype to show the

client. The following functional details have been provided to you by your company.

1. The doctor will turn the system on when they open the clinic for the day and turn it off

when they are leaving.

2. When a patient comes, the signs direct them to the self-service kiosk. The kiosk features

an LCD display and a 4-by-4 matrix keypad, similar to the corresponding components on

the development board. The patient interaction with the kiosk is as follows.

Consultation Room

Waiting Area

Self-service

Kiosk

Next Patient (PB0)

Cancel Appointment (PB1)

Keypad

LCD Display

LED Panel

Secondary

LCD Display

Bell

2

a. The patient presses the key  to start the process of Adding themselves to the

patient queue. This key  press switches the operation mode of the kiosk from

‘display’ to ‘entry’. In ‘display’ mode, any key pressed (except the key ) should be

ignored.

b. Upon entering ‘entry’ mode, the kiosk should prompt the patient for their first

name. The first line of the display can be used for the prompt and the second line

can be used to show the patient’s input. The keys 2-9 on the keypad are used for

accepting the patient input and they should function similar to the keypad on a

classic mobile phone (https://www.youtube.com/watch?v=g3aLKEaSKns

). Note

that key nine has four letters: w, x, y and z.

c. The key  is used to Backspace the last character entered, while the key  is used

to Clear the patient’s entire input.

d. Once the patient enters their name, they press the key  to indicate that they are

Done with the input. Then, the LCD display should show the patient a descriptive

message with their patient number.

e. Finally, the patient presses the key  again to confirm that they have seen their

patient number, causing the kiosk to switch from ‘entry’ to ‘display’ mode.

3. The LED panel is a wall-mounted led b a r, a bigger version of the LED bar on the

development board. The LED panel is used to provide the next patient with an estimated

wait time and to direct the patients’ attention to the secondary LCD display.

4. The secondary LCD display is a larger wall-mount LCD display. However, it is functionally

identical to the LCD display on the kiosk and mirrors the same content, except when the

kiosk is in ‘entry’ mode. In ‘display’ mode, both the LCD displays show the following

content.

a. The first row should display the text “Next Patient:”.

b. The second row should display the name of the next patient, aligned to the left of

the display, and their number on the queue, aligned to the right of the display.

When the kiosk enters ‘entry’ mode, the secondary LCD display preserve the content that

is displayed on it.

5. The bell is used to draw attention of the patients to the secondary LCD display. It has three

ring tones.

a. Beep-beep – A 1 sec. ON and 1 sec. OFF tone

b. Bip-bip – A 0.5 sec. ON and 0.5 sec OFF tone

c. Bee...eep – A 3 sec. ON followed by OFF (once)

The development board features a motor to represent the actuator in the bell. The bell

produces sound when the actuator (i.e., the motor on the development board) is

activated. To produce different ring tones, the motor can be activated according to the

timing specified.

6. The doctor uses the Next Patient button to call the next (or the first) patient. On the

development board, the Next Patient button is represented by the PB0 button. The

functionality after the button press is dependent on whether there are patients waiting or

not.

a. If there are patients waiting, the Beep-beep tone is played for 10 seconds followed

by the bip-bip tone. During this time, all the 10 LEDs in the LED panel also flashes

in sync with the tone played by the bell. The bip-bip tone should continue until it

is terminated by the next action of the doctor.

3

i. When the patient arrives at the consultation room, the doctor presses and

holds the Next Patient button for one second to stop the tones played by

the bell, stop the flashes generated by the LED panel and update the LCD

display with the new next patient’s details.

ii. If the patient does not arrive at the consultation room, the doctor presses

and holds the Cancel Appointment button for one second, to cancel the

appointment. This will produce the Bee...eep tone and the in-sync flash

that last for 3 seconds. Afterwards, the LCD display will be updated with

the new next patient’s details and the behaviour continues as if the Next

Patient button is pressed to call the newly displayed patient.

iii. If the kiosk happens to be in ‘entry’ mode when the doctor calls for the

next patient, the kiosk should temporarily switch to ‘display’ mode while

preserving the patient’s input (and any progress associated with adding

the patient to the queue). Five seconds after updating the LCD displays,

the kiosk can return to ‘entry’ mode to let the patient continue enqueuing

themselves.

b. If there are no patients waiting, then Next Patient button should not cause any

change in the operation and the button press should be ignored.

7. The Cancel Appointment button press should only be accepted when the doctor is

waiting for a patient to arrive at the consultation room.

8. When the doctor is not waiting for a patient to arrive at the consultation room, t he LED

panel displays the waiting time for the next patient. The usual consultation time is set at

the time of delivering the self-service kiosk and for testing purposes, you are asked to take

it as 20 seconds. The remaining time divided by the consultation time is scaled by ten ( i.e.,

(remaining time/consultation time) × 10) to calculate the number of consecutive LEDs to

turn on. Some examples are given below. The examples assume the consultation time is

20 seconds.

a. If 20 seconds of the consultation time is remaining, all 10 LEDs are turned ON.

b. If 15 seconds of the consultation time is remaining, LEDs 1-7 are turned ON.

c. If 3 seconds of the consultation time is remaining, LED 1 is turned ON.

d. If 1 second of the consultation time is remaining, no LED is turned ON.

Prototyping A Dual LCD Display Setup with A Single LCD

The development board does not feature two LCD displays. However, the electronics group of

your company has come up with a solution to prototype the system with one LCD display. They

are designing a splitter circuit, and they have provided you with the following sketch, illustrating

how they intend to transform the LCD driver circuit of the development board to the dual LCD

display setup in the production system.

MCU

LCD Display

Secondary LCD Display

-- Available on development board

-- Only in production system

― Data/Instructions from MCU to LCD

― Data from LCD to MCU

― Secondary LCD enable signal (Strobe)

4

The secondary LCD display often mirrors the LCD display on the kiosk. However, sometimes the

secondary LCD display needs to ignore certain display updates that are only meant for the LCD

display on the kiosk. Among the two functionalities, the expected functionality of the secondary

LCD display is determined by the operation mode of the kiosk (‘display’ and ‘entry’).

When the kiosk is in ‘display’ mode, you can communicate with the LCD display on the kiosk as

usual and by setting (to 1) the LED strobe signal on the development board, you can relay the

same data/instructions to the secondary LCD display. Any responses from the secondary LCD

display will be dropped. The electronics group of your company claims that the secondary LCD

display will be in a busy state only when the LCD display on the kiosk is in a busy state and

therefore, it is sufficient to know the state of the LCD display on the kiosk, before sending a

command to the LCD displays.

When the kiosk is in ‘entry’ mode, you can communicate with the LCD display on the kiosk as

usual and by resetting (to 0) the LED strobe signal on the development board, you can block

data/instructions to the secondary LCD display.

Project Evaluation (Worth 25% Of the Final Grade)

Your group needs to develop the prototype of the above system using AVR assembly and you can

make reasonable assumptions and take reasonable engineering decisions to complete your task.

However, for significant enough concerns (or if you are in doubt whether it is significant enough),

you are advised to talk to your tutor or ask on the course forum. This project will generate three

assessable outputs: Project demonstration, source code and project report. Each of them will be

assessed as follows.

Project demonstration (30% of the project mark): You will be presenting and demonstrating

your prototype during your lab class in week 10. The assessment will follow the assessment style

used for the labs. The presentation and demonstration should resemble an internal product

delivery presentation in a company (what is the product, what can it do, what it cannot do, who

did what, excerpts of code to explain any interesting design choices, demonstration). Your group

will have 30 minutes to present and demonstrate your prototype.

Source code (40% of the project mark): You will be submitting your final source file archive via

a give submission. You will be assessed based on the correctness, use of suitable techniques,

modularity, readability and formatting.

Project report (30% of the project mark): You will submit a brief report detailing the functionality

of your prototype. The report should resemble a product manual that would be sent to a client,

detailing the functionality. It can start with a short introduction followed by step-by-step

instructions to operate the prototype. You can include figures/illustrations and detail any

limitations along with the steps. For assessment purposes you need to have the following as

appendices: project timeline, a justification of design/engineering choices (for example, we used

external interrupts for ... because ... ) and a high level pseudo code detailing the overall design.

The expected length of the report is 10 pages (including appendices).

In addition to the assessable outputs, you need to fill out a form, individually, indicating the

contribution of your group members towards the project. The responses will be used to scale the

marks proportionate to the contribution. The form will be circulated later.

51作业君

Email:51zuoyejun

@gmail.com

添加客服微信: Fudaojun0228