Skip to content

Commit

Permalink
Merge pull request #24 from AaronPB/develop
Browse files Browse the repository at this point in the history
Release of version 1.3.0
  • Loading branch information
AaronPB authored Aug 10, 2024
2 parents 8406ea3 + d794a48 commit 3887ed0
Show file tree
Hide file tree
Showing 35 changed files with 3,049 additions and 188 deletions.
27 changes: 27 additions & 0 deletions .github/workflows/project_lint_black.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Lint python code with Black

on:
pull_request:
branches:
- master
- develop

jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Check project src folder
uses: psf/black@stable
with:
options: "--check --verbose"
src: "./src"
version: "24.4.2"

- name: Check project test folder
uses: psf/black@stable
with:
options: "--check --verbose"
src: "./tests"
version: "24.4.2"
2 changes: 1 addition & 1 deletion .github/workflows/project_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,4 @@ jobs:
pip install pytest pytest-cov
- name: Run project tests
run: python -m pytest tests/ --cov
run: python -m pytest tests/ --cov --cov-report term-missing
674 changes: 674 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

9 changes: 7 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,28 @@
</p>
<p align="center">
<a href="#readme"><img alt="Python tested versions" src="https://img.shields.io/badge/python-3.10_3.11-blue.svg"></a>
<a href="https://github.com/psf/black"><img alt="Python formatter" src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
<a href="https://github.com/AaronPB/force_platform/actions/workflows/project_test.yaml"><img alt="Project test status" src="https://github.com/AaronPB/force_platform/actions/workflows/project_test.yaml/badge.svg"></a>
<a href="docs/home.md"><img alt="Documentation link" src="https://img.shields.io/badge/docs-available-limegreen.svg"></a>
</p>

## Information

A python script for sensor data management of force platforms and extra ones.
A python software for synchronized data management of specific force platforms sensors compatible with Phidget API and other sensor types such as IMUs.

This project is part of the author's master's thesis in industrial engineering at the University of Almería. force_platform is licensed under de GNU General Public License v3.0.

![Main UI](docs/images/mainUI.png)

It supports currently the following sensor types:
- Phidget-Bridge compatible load sensors. (Requires Phidget dependency).
- Phidget encoders. (Requires Phidget dependency).
- Taobotics IMU sensors. (Requires MRPT dependency).
- USB webcams for video recording with opencv.

## Documentation

Program documentation is available to learn how the program works and how to use it.
Program documentation is available to learn how the program works and its usage.

Check it out [here](docs/home.md).

Expand Down
152 changes: 103 additions & 49 deletions config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,24 @@ sensor_groups:
sensor_list:
- encoder_1
- encoder_2
cameras:
camera_1:
name: Test Camera
read: true
connection:
serial: /dev/video2
settings:
fps: 30.0
frame_width: 620
frame_height: 480
properties:
camera_model: Logitech Series
sensors_calibration:
phidget_loadcell_reference: s_type
platform_reference: triaxial
platform_reference_triaxial:
- triax_x
- triax_y
- triax_z
sensors:
p1_z1:
name: P1_LoadCell_Z_1
Expand All @@ -77,8 +92,8 @@ sensors:
serial_number: Y2131167
max_weight: 150kg
calibration:
slope: 148893.5596545
intercept: -0.6307595051800341
slope: 1460645.82
intercept: 0
p1_z2:
name: P1_LoadCell_Z_2
type: SENSOR_LOADCELL
Expand All @@ -90,8 +105,8 @@ sensors:
serial_number: Y2131169
max_weight: 150kg
calibration:
slope: 148669.5630852
intercept: 0.03810777513459129
slope: 1458448.41
intercept: 0
p1_z3:
name: P1_LoadCell_Z_3
type: SENSOR_LOADCELL
Expand All @@ -103,8 +118,8 @@ sensors:
serial_number: W020822
max_weight: 150kg
calibration:
slope: 149632.0166783
intercept: -0.14545850287585083
slope: 1467890.08
intercept: 0
p1_z4:
name: P1_LoadCell_Z_4
type: SENSOR_LOADCELL
Expand All @@ -117,8 +132,8 @@ sensors:
serial_number: Y2131168
max_weight: 150kg
calibration:
slope: 148981.2171817
intercept: -0.7590389289353823
slope: 1461505.74
intercept: 0
p1_x1:
name: P1_LoadCell_X_1
type: SENSOR_LOADCELL
Expand All @@ -130,8 +145,8 @@ sensors:
serial_number: TT805051
max_weight: 110kg
calibration:
slope: 108087.9728225
intercept: -0.6423735162860709
slope: 1060343.01
intercept: 0
p1_x2:
name: P1_LoadCell_X_2
type: SENSOR_LOADCELL
Expand All @@ -143,8 +158,8 @@ sensors:
serial_number: TT805067
max_weight: 110kg
calibration:
slope: 108969.1503263
intercept: 0.12085782679337953
slope: 1068987.36
intercept: 0
p1_x3:
name: P1_LoadCell_X_3
type: SENSOR_LOADCELL
Expand All @@ -156,8 +171,8 @@ sensors:
serial_number: TT805061
max_weight: 110kg
calibration:
slope: 109557.5296413
intercept: -0.7429386923191892
slope: 1074759.37
intercept: 0
p1_x4:
name: P1_LoadCell_X_4
type: SENSOR_LOADCELL
Expand All @@ -169,8 +184,8 @@ sensors:
serial_number: TT805082
max_weight: 110kg
calibration:
slope: 109054.0987733
intercept: -0.7297277360961338
slope: 1069820.71
intercept: 0
p1_y1:
name: P1_LoadCell_Y_1
type: SENSOR_LOADCELL
Expand All @@ -182,8 +197,8 @@ sensors:
serial_number: TT805088
max_weight: 110kg
calibration:
slope: 109091.7733242
intercept: -0.1587153674825359
slope: 1070190.3
intercept: 0
p1_y2:
name: P1_LoadCell_Y_2
type: SENSOR_LOADCELL
Expand All @@ -195,8 +210,8 @@ sensors:
serial_number: TT805064
max_weight: 110kg
calibration:
slope: 109202.4262106
intercept: -0.7142529812102083
slope: 1071275.8
intercept: 0
p1_y3:
name: P1_LoadCell_Y_3
type: SENSOR_LOADCELL
Expand All @@ -208,8 +223,8 @@ sensors:
serial_number: TC755992
max_weight: 110kg
calibration:
slope: 109117.3520608
intercept: -1.2116328220676955
slope: 1070441.22
intercept: 0
p1_y4:
name: P1_LoadCell_Y_4
type: SENSOR_LOADCELL
Expand All @@ -221,8 +236,8 @@ sensors:
serial_number: TT805053
max_weight: 110kg
calibration:
slope: 109062.232258
intercept: -0.9654276058173821
slope: 1069900.5
intercept: 0
p2_z1:
name: P2_LoadCell_Z_1
type: SENSOR_LOADCELL
Expand All @@ -234,8 +249,8 @@ sensors:
serial_number: W019737
max_weight: 150kg
calibration:
slope: 148746.6259125
intercept: -5.6381197962843475
slope: 1459204.4
intercept: 0
p2_z2:
name: P2_LoadCell_Z_2
type: SENSOR_LOADCELL
Expand All @@ -247,8 +262,8 @@ sensors:
serial_number: Z1162733
max_weight: 150kg
calibration:
slope: 148810.6036536
intercept: -0.8234176348519066
slope: 1459832.02
intercept: 0
p2_z3:
name: P2_LoadCell_Z_3
type: SENSOR_LOADCELL
Expand All @@ -260,8 +275,8 @@ sensors:
serial_number: Z1162736
max_weight: 150kg
calibration:
slope: 148820.9384659
intercept: -4.717023129888452
slope: 1459933.41
intercept: 0
p2_z4:
name: P2_LoadCell_Z_4
type: SENSOR_LOADCELL
Expand All @@ -273,8 +288,8 @@ sensors:
serial_number: Z1162741
max_weight: 150kg
calibration:
slope: 148868.3620599
intercept: -1.5141569678683349
slope: 1460398.63
intercept: 0
p2_x1:
name: P2_LoadCell_X_1
type: SENSOR_LOADCELL
Expand All @@ -286,8 +301,8 @@ sensors:
serial_number: TT805059
max_weight: 110kg
calibration:
slope: 109277.2383537
intercept: -0.6519176093285637
slope: 1072009.71
intercept: 0
p2_x2:
name: P2_LoadCell_X_2
type: SENSOR_LOADCELL
Expand All @@ -299,8 +314,8 @@ sensors:
serial_number: TT805079
max_weight: 110kg
calibration:
slope: 108167.7664113
intercept: -0.714905327747779
slope: 1061125.79
intercept: 0
p2_x3:
name: P2_LoadCell_X_3
type: SENSOR_LOADCELL
Expand All @@ -312,8 +327,8 @@ sensors:
serial_number: TT805063
max_weight: 110kg
calibration:
slope: 109645.8122859
intercept: -0.6690181962431225
slope: 1075625.42
intercept: 0
p2_x4:
name: P2_LoadCell_X_4
type: SENSOR_LOADCELL
Expand All @@ -325,8 +340,8 @@ sensors:
serial_number: TT805056
max_weight: 110kg
calibration:
slope: 109510.7046296
intercept: -0.6135379763459383
slope: 1074300.01
intercept: 0
p2_y1:
name: P2_LoadCell_Y_1
type: SENSOR_LOADCELL
Expand All @@ -338,8 +353,8 @@ sensors:
serial_number: TT805080
max_weight: 110kg
calibration:
slope: 108559.4790098
intercept: -0.7794562145538997
slope: 1064968.49
intercept: 0
p2_y2:
name: P2_LoadCell_Y_2
type: SENSOR_LOADCELL
Expand All @@ -351,8 +366,8 @@ sensors:
serial_number: TT805058
max_weight: 110kg
calibration:
slope: 109123.0620917
intercept: -0.8536595136361385
slope: 1070497.24
intercept: 0
p2_y3:
name: P2_LoadCell_Y_3
type: SENSOR_LOADCELL
Expand All @@ -364,8 +379,8 @@ sensors:
serial_number: TT805068
max_weight: 110kg
calibration:
slope: 108907.1348579
intercept: -0.32279350513333327
slope: 1068378.99
intercept: 0
p2_y4:
name: P2_LoadCell_Y_4
type: SENSOR_LOADCELL
Expand All @@ -377,8 +392,8 @@ sensors:
serial_number: TT805066
max_weight: 110kg
calibration:
slope: 108359.7289318
intercept: -0.3276362911703359
slope: 1063008.94
intercept: 0
encoder_1:
name: Encoder_Z_1
type: SENSOR_ENCODER
Expand Down Expand Up @@ -444,3 +459,42 @@ sensors:
calibration:
slope: 31851.0
intercept: -0.3355
triax_x:
name: Triaxial_X
type: SENSOR_LOADCELL
read: true
connection:
channel: 0
serial: 583229
properties:
serial_number: SN231206001
max_weight: 2000N
calibration:
slope: 1721022.287
intercept: 0
triax_y:
name: Triaxial_Y
type: SENSOR_LOADCELL
read: true
connection:
channel: 1
serial: 583229
properties:
serial_number: SN231206001
max_weight: 2000N
calibration:
slope: 19773710.18
intercept: 0
triax_z:
name: Triaxial_Z
type: SENSOR_LOADCELL
read: true
connection:
channel: 2
serial: 583229
properties:
serial_number: SN231206001
max_weight: 2000N
calibration:
slope: 1771149.742
intercept: 0
Loading

0 comments on commit 3887ed0

Please sign in to comment.