In this project, we will first delve into the architecture of the platform, providing a complete overview of its structure and functionality. Subsequently, a demonstration of the practical application of the discussed architecture will be presented.
Main ConceptThe Feecc platform allows companies to organize the production process of any type of product, audit employee access to the workplace and retrieve all workflow data. Information is stored in IPFS storage and data hashes are immutable saved with Robonomics software with access its analytics.
The platform is a set of software for monitoring the production process and collecting information for subsequent analysis. Globally, the scheme of platform integration into the business process can be represented as follows:
- Secure data storage: Feecc uses a secure data storage based on a content-addressable architecture and Robonomics parachain to ensure the validity of collected workflow data.
- A clear link between the employee and the product: Feecc monitors all phases of the workflow with video recording, data logging from peripheral devices and employee access authorization.
- Digital product certificate: All digital traces of the workflow are summarized in a single product certificate with a unique identifier which is then attached as a QR code to the product.
- Support for peripheral devices: Feecc supports standard digital I/O interfaces for connecting various devices (video cameras, scanners, printers, etc.).
The Feecc platform consists of several services, from control of engineer workbench to providing analytics. Each service is responsible for some kind of functionality required for deployment in an enterprise environment. In this project we will consider only engineer workbench.
The main task of engineer workbench is to organize the workspace of the assembly engineer. Depending on the task the engineer may need the following devices:
- IP camera to organize video recording of the production process;
- RFID reader for identification in the system by personal RFID card;
- Barcode reader for scanning product labels;
- Label printer for labeling the manufactured products;
- Digital sensors collecting data from various devices / stations.
Figure below shows the Feecc Engineer Workplace architecture in a corporate environment. IPFS Gateway (as well as IPFS node and MongoDB in a form of a cluster peer) can be hosted on each employee's computer, which will enhance the decentralization of the system at a cost of computational resources.
Prerequisites:
To run the demo, you will need:
- UNIX-like system (tested on Ubuntu 22.04.2)
- Docker and Docker compose
- Web browser (tested on Google Chrome and Mozilla Firefox)
Installation
Execute the following commands:
git clone https://github.com/Multi-Agent-io/feecc-academy
cd feecc-academy
sudo docker compose up -d --build
To check working containers, run the following:
sudo docker ps -a
Launching demo
1. Go to http://localhost:3000 in your browser, you should see a welcome screen.
2. At this stage, the system should prompt the employee to place their RFID card on the scanner for authorization. In the demo, you can use hid-emulator.py
for authorization. To do this, run a separate Docker container:
sudo docker exec -ti feecc_academy_hid_emulator sh
python3 hid-emulator.py
3. It is capable of emulating two functions: providing an RFID card and scanning a barcode; you need the first function, enter 1
.
> Select emulated action (1/2):
> 1. Put ID card on the RFID scanner.
> 2. Scan a sample barcode with a barcode scanner.
> 1
> INFO:2023-03-21 21:42:05,370:Event relayed to endpoint http://127.0.0.1:5000/workbench/hid-event
4. You will see the screen for selecting the composition type, choose SINGLE DEVICE
.
5. Notifications will appear in the bottom left corner indicating the start of work on the device for which a unique ID is created. The blue notification will also display the activity of the virtual printer; on the actual setup, a barcode with the device's ID is printed at this moment.
6. Click on START COMPOSITION
to begin recording the device assembly process. You will be prompted to go through all the necessary assembly steps; each time an employee completes a step, they should click the NEXT
button, after which the video will be saved to IPFS. It is also possible to suspend assembly (PAUSE
) to return to it later or to stop the process completely (STOP
).
7. When all assembly stages are completed, the FINISH
button appears, after which Feecc suggests saving the device's certificate. However, before doing this, open the local Robonomics node in your browser, you will need it later. After that, return to Feecc and click SAVE PASSPORT
.
You will see new notifications in the corner of the screen: notification that the certificate have been uploaded to Robonomics and IPFS, as well as two blue messages about printing the seal tag and QR-code leading to the certificate.
8. Under the Chain info
section on the Robonomics local node screen, you should see a new event datalog.NewRecord
under the recent events
column. If you expand it, the IPFS CID corresponding to the certificate file of the device will be shown in the bytes
field.
9. Printed QR code contains a link to this CID, which allows opening the certificate file in the browser. Since your local IPFS node may not have that discoverability, you may reach the file locally with localhost:8080/ipfs/<CID>.
The contents of the certificate look something like:
Unit Unique Code: 423d3c1b42f6427e80cc881a16e07451
Unit Model Name: Single Device
Total Assembly Time: 0:05:37
Production Stages:
- Name: Prepare Tools (not finished.)
Employee Code: e9b69b302f72d82ca47964196536aab3f36e367910aff06d2be30888f9ad4234
Start Time: 26-06-2023 17:38:47
Finish Time: 26-06-2023 17:40:28
Assembly data in IPFS: This is a place for any production data, let it be video
record, some sensor data or any other data collection representing the production
process.
- Name: Prepare Tools (not finished.)
Employee Code: e9b69b302f72d82ca47964196536aab3f36e367910aff06d2be30888f9ad4234
Start Time: 26-06-2023 17:40:30
Finish Time: 26-06-2023 17:42:06
Assembly data in IPFS: This is a place for any production data, let it be video
record, some sensor data or any other data collection representing the production
process.
That's all for now. You can order any supported device and build the system by yourself to play more.
Comments
Please log in or sign up to comment.