Question

In: Computer Science

For this assignment you are required to build a system using BBC Micro:bit device. You will...

For this assignment you are required to build a system using BBC Micro:bit device. You will use the Micro:bit to gather data automatically using its sensors; and make it available on the internet. You are to deliver this data in a rigorous fashion to a PC attached via USB using the onboard Python, and then to run a local Python server on the PC with appropriate web pages to serve the result locally. Remote access to the PC is not required but would be simple to add. This assignment is designed to be as open as possible, and you are encouraged to be creative and innovative. This might be in the data collected, the manner of collection, the use of the data on the PC, etc. Marks will be awarded for interesting solutions; however, most of the marks are for the use of the techniques described above and below. Where an instruction might not be clear, you are to make a decision of what is reasonable to work, and justify this reasoning in the report, and video.

Details

1. Data Sampling

Take a measurement of at least two sensor variables that are plausibly connected (e.g. Temperature and light level), and regularly collect their measurements, storing them internally until the buffer is more than ¾ full, and then dump the contents to the PC. For example… o You need to simulate the changes for the sensors including light, temperature, accelerometer, and compass and explicitly describe their experimental setup. o Take the micro: bit into warmer and colder places and see how the temperature readings change. o Try out the built-in light sensing capability of the Micro:bit, o Flip the board; Page 2 of 4 o Test the kind of values that you get for the compass heading.

At the start of collection, the PC is to provide a time/date stamp to all devices, and they are to resynchronize every time a data transfer has successfully completed, and new data collection has started. If there is a significant difference, between internal date and synchronize-date, this is to be reported by the PC to the data files before re-synchronization to all data files prior to dumping the data onto them.

The sampling frequency of data is determined by the application (eg. temperature will not change frequently – unless it is a thermostat).

2. Display.

Whenever a sample is taken, the 5x5 display is to increment a single digit.

When the device is downloading, the display is to show a download icon.

When the collected data is confirmed to have been delivered and is cleared, then the display shows a tick mark. If a download error occurred, a cross is shown on the display.

3. Data Transmission

The data is to be labeled, and the time/date of collection is to also be recorded and dumped to the PC. Suggested data format is JSON.

.A suitable protocol is to be developed to ensure reliable transmission of the data. For example, a simple stop and wait ARQ.

The data in the onboard buffer of the connected Micro:bit is not to be deleted until the data has been confirmed to have arrived. Matched checksums might be sufficient.

4.PC Data

On the PC, the data can be stored as TAB-or Comma delimited data in a file in a fixed location.

The data is appended to any existing data in the file. This must be done at the PC end, in order to avoid running out of space, and the fact that file open in append mode is not possible on Micro:bit.

The data is to include the time/date stamp, device# doing the collection, the sensor variable name, and value.

Separate files are maintained for each sensor variable. This makes it easy to plot these files using Excel, or some such. As an extension. another Python package could run on the server to provide plot images.

5. Web server

The Python web server is to point to the folder containing the files. A web user could then select the file and see text data. An optional extension might be to store the data in HTML format but beware of tableend delimiters.

Solutions

Expert Solution

In a data collection of objects an python data collector is an key role where we can gatter a required data useing the inputs of different technologys where the data can be made modified and used

1. Data Sampling

Take a measurement of at least two sensor variables that are plausibly connected (e.g. Temperature and light level), and regularly collect their measurements, storing them internally until the buffer is more than ¾ full, and then dump the contents to the PC. For example… o You need to simulate the changes for the sensors including light, temperature, accelerometer, and compass and explicitly describe their experimental setup. o Take the micro: bit into warmer and colder places and see how the temperature readings change. o Try out the built-in light sensing capability of the Micro:bit, o Flip the board; Page 2 of 4 o Test the kind of values that you get for the compass heading.

At the start of collection, the PC is to provide a time/date stamp to all devices, and they are to resynchronize every time a data transfer has successfully completed, and new data collection has started. If there is a significant difference, between internal date and synchronize-date, this is to be reported by the PC to the data files before re-synchronization to all data files prior to dumping the data onto them.

The sampling frequency of data is determined by the application (eg. temperature will not change frequently – unless it is a thermostat).

2. Display.

Whenever a sample is taken, the 5x5 display is to increment a single digit.

When the device is downloading, the display is to show a download icon.

When the collected data is confirmed to have been delivered and is cleared, then the display shows a tick mark. If a download error occurred, a cross is shown on the display.

3. Data Transmission

The data is to be labeled, and the time/date of collection is to also be recorded and dumped to the PC. Suggested data format is JSON.

.A suitable protocol is to be developed to ensure reliable transmission of the data. For example, a simple stop and wait ARQ.

The data in the onboard buffer of the connected Micro:bit is not to be deleted until the data has been confirmed to have arrived. Matched checksums might be sufficient.

4.PC Data

On the PC, the data can be stored as TAB-or Comma delimited data in a file in a fixed location.

The data is appended to any existing data in the file. This must be done at the PC end, in order to avoid running out of space, and the fact that file open in append mode is not possible on Micro:bit.

The data is to include the time/date stamp, device# doing the collection, the sensor variable name, and value.

Separate files are maintained for each sensor variable. This makes it easy to plot these files using Excel, or some such. As an extension. another Python package could run on the server to provide plot images.

5. Web server

The Python web server is to point to the folder containing the files. A web user could then select the file and see text data. An optional extension might be to store the data in HTML format but beware of tableend delimiters.

,This are the posiable determiners of collecting data useing tensorflow ,keras etc.


Related Solutions

using c++ You have been contracted to build a hotel reservation system. This is the system...
using c++ You have been contracted to build a hotel reservation system. This is the system that hotel desk clerks will use to take desk reservations. Assumptions: This is acting as though the only reservations taken are at the desk. All reservations are for one night. The hotel is empty when you start the program. First, this program will give the full inventory of rooms in the hotel. Total rooms: 122 There are four types of rooms with these prices:...
For this assignment, you can build on the 9th exercise that you made for the Assignment...
For this assignment, you can build on the 9th exercise that you made for the Assignment 1. So, you have a file named “band.html”. Create 2 more web pages besides band.html. All have to be in the same folder. You can redesign your band.html web page. Name each file as you wish (e.g., album names, tour, contact). They should also appear in the navigation bar. You can name your home page as Home in the navigation bar. Create an external...
Assignment Description: You will be required to conduct analysis of a technology/system application and write a...
Assignment Description: You will be required to conduct analysis of a technology/system application and write a formal paper. The analysis need to be of an application technology used in either (a) a clinical setting for managing health data, patient care, etc or (b) educational setting for improvement of teaching and learning of students, patients, etc. The Technology Application Analysis will be an independent activity for each student to be completed using resources available in your agency, IT department, on the...
In this assignment, you will be selecting a product of interestand you will build a...
In this assignment, you will be selecting a product of interest and you will build a sales strategy to improve the sales performance for that product. A product is only one of the four pillars of a marketing strategy, and so you will need to build a thorough understanding of how the price of this product is set, what channels are available for the physical housing and distribution of the product, and how this product will be promoted (commonly referred...
Overview In this assignment you are required to implement binary code comparator using Xilinx that it...
Overview In this assignment you are required to implement binary code comparator using Xilinx that it is compatible with the MXK Seven Segment Displays. You will draw your digital logic circuit using Xilinx and then simulate it to verify the functionality of your design. Software Requirements ? Xilinx ISE 10.1 or higher Specifications Binary Code Comparator The binary code comparator is to be implemented and made compatible with the seven 7-segment displays of the board. Represent the first five digits...
In this assignment, which continues to build on last week's assignment, you will create a mind...
In this assignment, which continues to build on last week's assignment, you will create a mind map identifying the steps in the training process for a CRM program to help you understand the important role training plays in an organization. It further helps you understand the importance of training as you explore how training is designed, delivered, and measured for success I need more info on what a CRM is and Which training evaluation methods would you recommend to assess...
C++ Simple Programming Assignment you need to build off of the code below: #include using namespace...
C++ Simple Programming Assignment you need to build off of the code below: #include using namespace std; // class definition class Fraction {         // two data members         // one representing numerator         int numerator;         // other, representing denominator         int denominator;         public:                 void set (int numerator, int denominator);                 Fraction addedTo (Fraction f);                 Fraction subtract (Fraction f);                 Fraction multipliedBy (Fraction f);                 Fraction dividedBy (Fraction f);                 bool isEqualTo (Fraction f);                 void print (); }; void Fraction :: set (int numerator, int denominator) {         this...
CSC 466 Spring 2017 Assignment:: A6 Basic Type System --------------------------------------------------------------- Your assignment: Build the basic type...
CSC 466 Spring 2017 Assignment:: A6 Basic Type System --------------------------------------------------------------- Your assignment: Build the basic type system - type set at declaration - consult sym-tab on var usage - build type of expression based on parts - LHS = RHS types should match ** Also make sure vars are declared of course Note:: we started this in class -- start with the project you already have from /tmp/466T/ic0315.tar.gz that we worked on in class on Wed 3/15 ************************************************************* Kinds of...
For this assignment you will implement a dynamic array. You are to build a class called...
For this assignment you will implement a dynamic array. You are to build a class called MyDynamicArray. Your dynamic array class should manage the storage of an array that can grow and shrink. The public methods of your class should be the following: MyDynamicArray(); Default Constructor. The array should be of size 2. MyDynamicArray(int s); For this constructor the array should be of size s. ~MyDynamicArray(); Destructor for the class. int& operator[](int i); Traditional [] operator. Should print a message...
In this assignment you will build a small C# project that uses… • A struct •...
In this assignment you will build a small C# project that uses… • A struct • A method with a reference parameter • A while-loop • A switch statement and block instructions: Inside the StringHandler struct add a public void method named Abbreviate. The Abbreviate method must take a string parameter that is passed by reference. This method will take the name of a month (January, February, etc.) as its input and convert it to a 3-letter abbreviation of the...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT