Joe's Sensor Processing Interactive Teaching Stuff


This webpage contains an introduction to sensor data and sensor processing including a bunch of interactive sensor processing examples. It is primarily intended for students on the COMP4014 Designing Sensor-Based Systems course at Nottingham University School of Computer Science.

Any questions, email Joe Marshall.

Introduction to Web Python

The sensor processing examples on here use web based python scripts. These run in your web browser thanks to the pyodide project. In this section we will discuss this stuff, the coursework, and how you should use web python in your coursework.

Python and sensors on the web

MRT Coursework 2 introduction

Extra built in modules

PyDocs - filters module

PyDocs - graphs module

PyDocs - kbread module

PyDocs - led module

PyDocs - sensors module

PyDocs - speech module

PyDocs - tflite module

The GrovePI board and sensors

We use the grovepi board with custom software in the labs (and to do coursework 2). This section introduces the grovepi and the various sensors we have for it.

The GrovePI Board

Reading from sensors

The LCD Display

The GrovePi Emulator

Sensor quick reference

Lab Worksheet - Introduction to Grovepi

What is a Sensor

These pages introduce you to what a sensor is, you need to know this before you can work with them in any principled way.

Here are some sensors

What defines a sensor?

Why are sensors hard?

Characterizing Sensors

In the previous section we learnt that sensors respond to physical properties in the real world, rather than simply giving you the value of that property. In this section, we will look at how we can understand and characterize that response.

Sensors are dirty and bad

Limitations of analog to digital conversion

Numerical error and noise

Non-numerical errors

Filtering and processing sensor data

Sensor data is dirrrty. How do we get a cleaner measurement of what we want to understand about the world? Find out in this exciting multi-part series on data filtering!

Approaches to making sensor data usable

Thresholding data

Robust event detection

Linear filtering of numerical data

The delights of non-linear filters

Awesome Accelerometers

Stupendous Sound

Luscious Light

Combining Sensors

Each type or placement of sensor has advantages and disadvantages over the range of possible situations we are sensing. By combining two or more sensors it may be possible to get improved results, as each sensor compensates for weaknesses in the other sensors.

Combining Sensors and making inferences - Intro

Why we might combine multiple sensors

Methods of combining sensors

Here is one I made earlier

Testing Sensor Algorithms

How well does my system work? Did the change I made to my algorithm improve it or make it worse? Is my system better than your system? In this section, we will talk through ways to answer these questions through testing. Do make sure you read this section, it is really important in terms of how you actually build things…

What is sensor testing?

Capturing and Replaying Data

Ground Truth Datasets

Sensor testing metrics

The role of testing in a sensor development workflow

Machine learning for sensor processing

Why use machine learning for sensor processing?

Types of Machine Learning for Sensor Processing

Some sensor processing using machine learning

Sensing Human Activities

Sensing Humans and their Activities

The Responding Body

The Moving Body

The Sensing Body

The Relating Body