The Tabletop activites RPi software
The Tabletop activities
This software package provides the software and middle-ware for the Tabletop low-cost tabletop game to collect learning analytic during computational thinking using unplugged or tangible activities.
The mechanical setup drives angular and linear actuators and motors in order to move the objects on the tabletop, and grabs images in order to analyze the game state. User interaction is performed via web pages accessible on a tactile screen, while video and audio recording of small interviews is also available.
The software architecture includes a local client/server mechanism in order all user interface to be designed as web pages, while the server allows to run algorithms and store the collected data, before sending them into a safe remote storage on an external virtual machine.
Hardware drivers and the client/server mechanisms runs on a RPi (Raspberry-3) low-cost standalone computer with a WiFi hot-spot allowing to drive local connected objects and connects to a Desktop computer, in order to connect to remote hosts.
The user simply plays with the mechanical device and interact with a touch screen.
and this hardware photo gallery:
- A: The Raspberry computer tablet computer mounted on a carriage with the image analysis camera Raspicam mounted on a pole to provide a top view of the gameplay space.
- B: A view of the worksite, showing that everything has been built with standard craft tools.
- C and D: Detailed views of an automatic gate between two rooms, with the controller stick in the cellar part of the box.
- E and F: Detailed views of the locker mechanism, the bolt fastener has been produced on a 3D printer in a maker-space.
- G: A view of the game board before putting it in place, all decoration is printed on a contact paper stuck on a thin wooden plank.
- H and I: Detailed view of the wagon mechanism allowing the tablet to move along the game sequence.
- J: A view of the setup when closed, allowing to easily move it from one place to another.
Package files: https://gitlab.inria.fr/line/aide-group/tabletop
Package documentation: https://line.gitlabpages.inria.fr/aide-group/tabletop
npm install git+https://gitlab.inria.fr/line/aide-group/tabletop.git
npm script usage
npm install : installs all package dependencies. npm run build: builds the different doc and test files. npm test : runs functional and non-regression tests. npm clean : cleans installation files. npm run sync : syncs the files with the git repository.
- aidecv: Image processing encapsulation via web interface
- aidesys: Basic system C/C++ interfaces to ease multi-language middleware integration
- express: Fast, unopinionated, minimalist web framework
- stepsolver: A step by step variational solver mechanism
aidebuild: Builds multi-language compilation packages and related documentation.