代做KIT317 Assignment 1 2024帮做Python编程

KIT317

Assignment 1     2024

Due: 3pm, Friday April 12th

Tasks               18 marks

In this assignment, you are required to build an IoT device (using the Sense Hat Emulator) and have it communicate with a webserver (implemented in the same virtual machine).

You’ve been tasked with creating a prototype for a sensor device to be used by forestry workers to monitor the growing conditions of trees. You will need to emulate an IoT device that can take environmental readings and report them back to a webserver. Your device will need to have a setup mode and know whether its messages ae being received or not. Your webserver will log events and have a way of viewing that log. The requirements that each device must implement are below.

Environmental Sensor (emulated SenseHat device)

Your Environment sensor (Sensehat and python) needs to implement the following requirements:

· Detect movement events in real time. Classify the movement and set the state until it can be reported to the next time the movement is reported to the server.

o If the change in movement is less than 0.1, then it’s classified as normal.

o If there is a change greater that 0.1, then it’s classified as windy.

§ When a windy state is reported to the server, reset the state to normal.

o If there is a change greater that 0.3, then it’s classified as a collision.

§ When a collision state is reported to the server, the device stays in this state, and scrolls the collision message on the SenseHat screen. The collision message (and the state) can be cleared by pressing the middle button on the SenseHat.

· Report to the server every one minute.

o Send a timestamped message that contains:

§ The current temperature.

§ The current Humidity.

§ The current wind conditions.

· Once reported, the wind conditions should be reset back to normal.

o Report an offline error when an acknowledgement is not received from the server.

· Contain a normal operation mode and a setup mode.

o Setup mode is entered by pressing the middle button on the SenseHat while not in a collision state.

o Pressing the left and right buttons will change the mode between temperature and humidity.

§ Display some sort of visual indicator (icon or scrolling text) to show which mode is currently selected.

o Pressing up and down will change the threshold for the selected mode (temp/humidity).

§ Use scrolling text to indicate the current value to the user.

o Pressing the middle button will exit the setup mode, or after no button has been pressed for 10 seconds.

o While setup mode is active, the device should not report to the server.

Webserver

Your webserver (php) will need to implement the following requirements:

· Receive updates from the environmental sensor every minute and log the data.

o Save the temperature, humidity, wind conditions and device timestamp on the server (along with a server timestamp) to an XML file.

o Save the temperature and humidity thresholds in the XML file.

o Return an acknowledgement to the device .

· Your server should also implement a way of viewing the log by reading from the XML file and.

o Report the total number of timestamps recorded.

o Displays the current temp and humidity threshold.

o The view should display as a table every timestamp where by:

§ The timestamps for when temperature and humidity were above the thresholds.

§ There was a collision event recorded.

§ The total number of high wind states that were recorded.

Demonstration          2 marks

Along with your code (zipped) and diagram, you should record a quick video that demonstrates your system. Your video should be a screen recording, whereby you demonstrate your virtual machine environment, showing off all the features of your IoT device in the SenseHat emulator, and your webserver running in a browser. In your video, you should talk through the features as you demonstrate them to the marker.

Marking Scheme

The assignment submission should include:

· Your code for the sensehat (python) and server (php) as a zip file.

· A diagram of the system that you implemented, showing how the device moves between states.

· A demonstration of the system.

Your IoT device detects wind events in real time

 

· Detects movement from the IMU, correctly classifies the state and correctly returns to normal once reported.

3

· Partially implemented but fails one or more of the above.

1

· Nothing is implemented

0

 

Your IoT device reports to the server

 

· Reads environmental data, reports it to the server (with wind conditions and a timestamp), displays an error if the server does not acknowledge.

3

· Partially implemented but fails one or more of the above.

1

· Nothing is implemented

0

 

Your IoT device contains a setup mode

 

· Your device correctly enters and leaves setup mode, switches between temperature and humidity modes, changes the thresholds, correctly reports them to the server, times out and exits setup.

5

· One of the features above is not working

3

· Two or more of the features above are not working

1

· Not Implemented

0

Your server logs data from your IoT device

 

· Receives input from the IoT device and logs it to an XML file, returns an acknowledgement to the IoT device.

2

· Partially implemented but fails one or more of the above.

1

· Not Implemented

0

 

 

Your webserver implements a way to view the log.

 

· The webserver implements a view of the relevant log events, displays the current thresholds, number of events reported.

2

· It is implemented but one of the features do not work properly

1

· Not Implemented

0

 

Flow Chart or State Transition Diagram

3

 

 

 

 


热门主题

课程名

mktg2509 csci 2600 38170 lng302 csse3010 phas3226 77938 arch1162 engn4536/engn6536 acx5903 comp151101 phl245 cse12 comp9312 stat3016/6016 phas0038 comp2140 6qqmb312 xjco3011 rest0005 ematm0051 5qqmn219 lubs5062m eee8155 cege0100 eap033 artd1109 mat246 etc3430 ecmm462 mis102 inft6800 ddes9903 comp6521 comp9517 comp3331/9331 comp4337 comp6008 comp9414 bu.231.790.81 man00150m csb352h math1041 eengm4100 isys1002 08 6057cem mktg3504 mthm036 mtrx1701 mth3241 eeee3086 cmp-7038b cmp-7000a ints4010 econ2151 infs5710 fins5516 fin3309 fins5510 gsoe9340 math2007 math2036 soee5010 mark3088 infs3605 elec9714 comp2271 ma214 comp2211 infs3604 600426 sit254 acct3091 bbt405 msin0116 com107/com113 mark5826 sit120 comp9021 eco2101 eeen40700 cs253 ece3114 ecmm447 chns3000 math377 itd102 comp9444 comp(2041|9044) econ0060 econ7230 mgt001371 ecs-323 cs6250 mgdi60012 mdia2012 comm221001 comm5000 ma1008 engl642 econ241 com333 math367 mis201 nbs-7041x meek16104 econ2003 comm1190 mbas902 comp-1027 dpst1091 comp7315 eppd1033 m06 ee3025 msci231 bb113/bbs1063 fc709 comp3425 comp9417 econ42915 cb9101 math1102e chme0017 fc307 mkt60104 5522usst litr1-uc6201.200 ee1102 cosc2803 math39512 omp9727 int2067/int5051 bsb151 mgt253 fc021 babs2202 mis2002s phya21 18-213 cege0012 mdia1002 math38032 mech5125 07 cisc102 mgx3110 cs240 11175 fin3020s eco3420 ictten622 comp9727 cpt111 de114102d mgm320h5s bafi1019 math21112 efim20036 mn-3503 fins5568 110.807 bcpm000028 info6030 bma0092 bcpm0054 math20212 ce335 cs365 cenv6141 ftec5580 math2010 ec3450 comm1170 ecmt1010 csci-ua.0480-003 econ12-200 ib3960 ectb60h3f cs247—assignment tk3163 ics3u ib3j80 comp20008 comp9334 eppd1063 acct2343 cct109 isys1055/3412 math350-real math2014 eec180 stat141b econ2101 msinm014/msing014/msing014b fit2004 comp643 bu1002 cm2030
联系我们
EMail: 99515681@qq.com
QQ: 99515681
留学生作业帮-留学生的知心伴侣!
工作时间:08:00-21:00
python代写
微信客服:codinghelp
站长地图