updated documentation structure

This commit is contained in:
Sebastian Wendel 2022-12-17 20:33:50 +01:00
parent 56869d2213
commit ab330052e3
No known key found for this signature in database
GPG key ID: 1422B7DF78144640
47 changed files with 116570 additions and 47 deletions

View file

@ -0,0 +1,55 @@
# Device Specifications
## Size
* height 150 mm
* wide 350 mm
* deep 150 mm
## Harware Specification
* 4 Core ARM-Cortex-A72 Processor with 1,50 GHz
* 4 GB Arbeitsspeicher (depending on the purchased version)
* 64 GB Flash memory (depending on the purchased version)
* [Sony IMX477R](https://www.raspberrypi.com/products/raspberry-pi-high-quality-camera/) Image sensor with 12.3MP
* M12-Mount Optiken mit 16 und 25 mm Linsen
* Automatic focus via linear guide
* automatic sampling via peristaltic pump
* the case is made of wood fiberboard
## Software Specification
* [Debian](https://www.raspberrypi.com/software/operating-systems/) based Embedded Linux operating
* [Node-Red](https://nodered.org/) based user interface
* [Python](https://www.python.org/) Image processing service and cloud connection
* Open-Source Lizenzen
* Hardware: CERN Open Hardware Licence
* Software: GNU General Public License
* Dokumentation: Creative Commons Attribution-ShareAlike
## Characteristic
* Focus stage control
* Pump control
* Automatic image capture
* Automatic segmentation, optimization and object detection
* 4,200 images, 41,000 objects, ~ 1 minute
* Control via smartphone or tablet
## Certification
* [DIN SPEC 3105-1: Open Source Hardware](https://www.researchgate.net/publication/342564027_DIN_SPEC_3105-1_Open_Source_Hardware)
## Areas of Application
* Plankton analysis
* Image small animals and algae living in water
* Mobile use via external power supply
## System Requirements
* Smartphone or tablet
## Accessories
* [Collector device]()

View file

@ -0,0 +1,13 @@
# Research
## Plankton Planet: seatizen oceanography to assess open ocean life at the planetary scale
* assets/2020.08.31.263442v1.full.pdf
## PlanktoScope: Affordable Modular Quantitative Imaging Platform for Citizen Oceanography
* assets/fmars-09-949428.pdf
## PlanktonScope: Affordable modular imaging platform for citizen oceanography
* assets/2020.04.23.056978v1.full.pdf

View file

@ -0,0 +1,62 @@
# Chapter 1
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
!!! warning
⚠ Be extremely careful because this is very sharp.
## Detach the **Parts** from **panels** by cutting the **tabs**
![Image title](https://dummyimage.com/600x400/eee/aaa){ align=left }
### 👁 Locate the **panel S1** and discover the 5 differents **Parts F, P, K, J and I**
### 🎬 Flip your panel S1
### 🔴 Locate the outer **tabs** on the edges of the different **Parts**
### 🟠 B2. Razor blade
!!! warning
⚠ Be extremely careful because this is very sharp.
### 🟣 Use the **razor blade** to cut the outer tabs located on the edges of the different Parts
❌ Do not cut the inner tabs present inside the different Parts for now and focus on the outer tabs attaching the Parts to the main panel.
Position your **razor blade** on the tab as close to the piece as possible to avoid residual tab after cutting.
Press firmly on the razor blade, being very careful with your finger, to cut your first tab.
Make sure you don't damage your table by placing a flat, rigid support under the **S1 panel**.
Keep going with the other tabs of this piece F.
Once you have removed your **Part** from the main panel by cutting off all the tabs holding it, inspect it for potential residual tabs.
🟣 Here is a **residual tab** that will need to be removed.
🟠 Here there is no **residual tab** which is perfect.
🟣 Place your razor **blade flat** on the edge of your piece being very careful with your fingers and cut the residual tab.
Repeat the cutting of the **tabs** on all the **Parts F, P, K, J and I** present on the **panel S1**.
⚠ Be extremely careful because this is very sharp.
🔴 Locate the **inner tabs** on the edges of the different **Parts**.
Cut out the **tabs** inside of all the **Parts F, P, K, J and I** detached from the **panel S1**.
✅ Good way of cutting inner tabs
❌ Wrong way of cutting inner tabs
Repeat the process on the **panel S2**.
󰔞 Discover the 11 differents **Parts**.

View file

@ -0,0 +1,78 @@
# Chapter 10
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Mount the **Raspberry Pi Camera HQ** on **Part B**
🟣 Locate the 4 holes on the top of the **Part B**.
---
🔵 **A2**. Standoff M2.5 - 15mm - Brass
---
Insert the four **Standoff M2.5 - 15mm**.
---
The result should be similar to the picture.
---
🟢 **B4**. Wrenches for standoffs
---
Using the small side of the **Standoff Wrench**, secure the **4 M2.5 - 15mm Standoffs**
---
* ✅ Make sure to screw until the **Standoff** is properly tightened into the hole.
* ❌ Do not stop screwing before.
---
󰔞 Locate the **Raspberry Pi Camera HQ**
---
Remove the lens cap **Raspberry Pi Camera HQ**.
---
!!! warning
⚠ Make sure your camera lens is clean. If it is not, gently wipe using cotton swab for this task.
---
Place the **Raspberry Pi Camera HQ** on top of the four **Standoffs** installed on **Part B**.
🟣Ensure correct orientation of the **Raspberry Pi Camera HQ**. The **black connector** where the **Ribbon Cable** was removed is on the same side as the 🟢slot circled in green
---
🟠 **A4**. Screw M2.5X5mm CHC - SS
---
🟡 **B3**. Allen key 2mm
---
Use the allen key and tighten the **Raspberry Pi Camera** to the **Standoffs**.
---
The result should be similar to the picture.
!!! info
🎬 Store this assembly for later.

View file

@ -0,0 +1,62 @@
# Chapter 10
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Mount the **Linear Stepper Motor** on **Part E**
󰔞 Locate the Stepper Motors ⚠ Avoid touching the metal rods on the Stepper Motors
🟣 You can touch the gold stands
---
🟡 **A5**. Screw **M2.5X10mm** CHC - SS
---
🟡 **B3**. Allen key 2mm
---
🔴 Lay the **Part E** down and make sure the pockets in these holes are
facing upwards.
🟣 Locate the four holes on **Part E** and place four M2 Screws in the holes.
---
Attach the stepper motors to the screws we have just placed with the 🔴 pockets positioned on opposite to the cabling.
The result should be similar to the picture.
---
Use the 2mm allen key to fix the **Stepper Motors**.
The result should be similar to that picture.
---
The result should be similar to the picture.
---
Repeat the process on the other side with the other **Stepper Motor**.
---
Repeat the process on the other side with the other Stepper Motor.
---
The result should be similar to the picture.
!!! info
🎬 Store this assembly for later.

View file

@ -0,0 +1,19 @@
# Chapter 2
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Place the 4 **Adhesive Pads** under the **Part I**
👁 Take the Part I.
🟠 Take the four adhesive pads present in the bag A.
🟣 Locate the four pockets that will receive the four adhesive pads.
Remove the paper and place the four adhesive pads in the pockets by pressing firmly on them, sticky-side down.
🎬 Store this assembly for later.

View file

@ -0,0 +1,32 @@
# Chapter 3
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Screw the four **Standoffs** into **Part A**
👁 Grab the **Part A**.
🟣 Locate the **four holes** on **Part A**.
🟢 **A1. Standoff M2.5 - 6mm**- Brass
🟢 **B4**. Wrenches for standoffs
🟣 Place the Standoff M2.5 - 6mm in the small side of the wrenches for
standoffs B4.
🟠 Do not use the big side of the wrenches for standoffs since the standoff will be loose in it.
Place the standoff in the hole and start rotating **by hand** in a clockwise direction until secure.
Then tighten with the wrench.
✅ Make sure to screw until the standoff is properly inserted in the hole.
❌ Do not stop screwing before.
Keep going for each of the **four holes**.

View file

@ -0,0 +1,27 @@
# Chapter 4
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Mount the **Heat Sinks** on the **Raspberry Pi**
󰔞 Locate the **Raspberry Pi 4 Model B** packaging.
!!! warning
⚠ Be careful removing it from its packaging.
Place the **four Heat Sinks** next to your **Raspberry Pi** and mark the locations of the **Heat Sinks** on the **Raspberry Pi**.
🟠 & 🔵 **Small Heat Sinks**
🟢 **Medium Heat Sink**
🟣 **Big Heat Sink**
Remove the protective labels under a **Heat Sink** and place the **Heat Sink** on the slot of the **Raspberry Pi**.
Remove the protective labels under all the **Heat Sinks** and place all the **Heat Sinks** on the slots of the **Raspberry Pi**.

View file

@ -0,0 +1,22 @@
# Chapter 5
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Insert the **micro SD card** in the **Raspberry Pi**
* 󰔞 Locate the **SD card adapter** in the **bag K**.
* The **micro SD card** is inserted in the SD card adapter.
* 🟣 Remove the **micro SD card** from the **SD card adapter**.
* Flip your **Raspberry Pi**.
* 🟠 Locate the **micro SD port**.
* 🟣 Insert the **micro SD card** in the **Raspberry Pi**.
* Push the **micro SD card** in the **Raspberry Pi** port to a point of resistance.
* If you notice that the **micro SD card** protrudes about 2mm from its slot, this is normal.

View file

@ -0,0 +1,25 @@
# Chapter 6
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Mount the **Raspberry Pi** on the **Part A**
* ✅ Make sure to position the Raspberry Pi properly on the four standoffs screwed on the Part A.
* ❌ Do not invert the position of the Raspberry Pi on the four standoffs screwed on the Part A.
* 🟣 **A3. Standoff M2.5 - 16mm** - SS
* Screw by hand a Standoff M2.5 - 16mm on the **Raspberry Pi**.
* Screw by hand all Standoffs M2.5 - 16mm on the **Raspberry Pi**.
* Make sure you insert all four standoffs by hand and tighten slightly.
* 🟢 **B4**. Wrenches for standoffs
* 🟠 Secure the Standoff M2.5 - 16 mm - SS **A3** in the big side of the wrenches for standoffs **B4**.
* 🟣 Do not use the small side of the wrenches for standoffs since the standoff wont fit in it.

View file

@ -0,0 +1,58 @@
# Chapter 7
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Attach the **Ribbon Cable** to the **Raspberry Pi**
󰔞 Locate the **Raspberry Pi Camera HQ** packaging.
!!! warning
⚠ Be careful removing it from its packaging.
---
Lay your **Raspberry Pi Camera** face down on a suitable surface.
🔴 The **black connector** is simply a push/pull fit. To disengage the cable, pull the two corners of the black connector down, away from the camera board. It will unclip to about 3mm, make sure you don't pull it off! If you're struggling, try pulling off one corner of the connector at a time.
!!! warning
⚠ Be careful with this, this part is delicate. Lift the black connector gently
---
Once the connector has been disengaged from the Raspberry Pi camera board, the cable will simply slide out!
* 🟣 Put aside Camera the Raspberry Pi
* 🟢 Keep the Ribbon Cable for next step.
---
* 🔴 Locate the **black connector** present on the **Raspberry Pi**.
---
🔴 The **black connector** is simply a push/pull fit. To disengage the cable, pull the two corners of the black connector down, away from the camera board. It will unclip to about 3mm, make sure you don't pull it off! If you're struggling, try pulling off one
corner of the connector at a time.
!!! warning
⚠ Be careful, this part is delicate. Gently prise the black connector with nail or fingertip and thumb.
---
Insert the **Ribbon Cable** you just detached from the **Raspberry Pi Camera** in the **Raspberry Pi**.
✅ Make sure to insert in as much as you can.
🟣 Blue rectangle on **Ribbon Cable** should face the same direction as the arrow below.
---
🔴 Secure the Ribbon Cable in the Raspberry Pi by pressing firmly on the black connector.

View file

@ -0,0 +1,58 @@
# Chapter 8
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Mount the PlanktoScope HAT on the Raspberry Pi
### Locate
󰔞 Locate the **PlanktoScope HAT** present in **bag I**.
### Ribbon cable
🔴Thread the **Ribbon cable** through the **PlanktoScope HAT** slot from the
underside.
!!! warning
⚠ Make sure the two 🟣black connectors are aligned before threading through the ribbon.
### Plug
Plug the **PlanktoScope HAT** into the **Raspberry Pi**.
!!! warning
⚠ Make sure the two black connectors are aligned before attaching them together.
### Connect
Press the **PlanktoScope HAT** against the **Raspberry Pi** until it is no longer possible to move them closer together.
!!! warning
⚠ Continue to feed through the Ribbon Cable and do not crush it while pressing the PlanktoScope HAT against the standoffs.
---
🟠 **A4**. Screw **M2.5X5mm** CHC - SS
---
🟣 Locate the 4 holes on the top of the **PlanktoScope HAT** and insert the four **M2.5X5mm**
---
🟡 **B3**. Allen key 2mm
---
Screw the four **A4** screws through the **PlanktoScope HAT** onto the **Standoff M2.5 - 16mm**.
🎬 Store this assembly for later.

View file

@ -0,0 +1,30 @@
# Chapter 9
## Notes
| Topic | Description |
| --------- | ----------- |
| **Time** | |
| **Tools** | |
| **Parts** | |
## Place the **Power Socket** on **Part M**
󰔞 Locate the **DC Power Jack** from the **Bag K**.
Remove the **Lock Ring** from the **DC Power Jack**
---
* 🔴 Lay the **Part M** down and make sure the pockets in these holes are facing upwards.
* 🟣 Locate the **Power Socket** hole on **Part M**.
---
🔴 Insert the cable inside of the hole by being sure of the orientation of the **Part M**.
---
* 🟣 Flip the **Part M** and secure the **DC Power Jack** by hand on the **Part M** by screwing the **Lock Ring**.
* ⚠ Make sure the **Lock Ring** doesnt spin on itself.
* 🎬 **Store this assembly for later**.

View file

@ -0,0 +1,39 @@
# Content of the Kit
* note on the mapping of the component in the task to number in the BOM
## Bag A
## Bag B
## Bag C
## Bag D
## Bag E
## Bag F
## Bag G
## Bag H
## Bag I
## Bag J
## Bag K
## Bag L
## Bag M
## X1
## X2
## X3
## X4
## X5

View file

@ -0,0 +1 @@
# Disposal and recycling

View file

View file

@ -0,0 +1,3 @@
# Manufacturing
## CAD Files

View file

View file

View file

@ -2,10 +2,17 @@
SPDX-License-Identifier: CC-BY-SA-4.0 SPDX-License-Identifier: CC-BY-SA-4.0
--> -->
# Contributing <!-- omit in toc --> # Contributing
First of all, thank you for contributing to FabCityOS! The goal of this document is to provide everything you need to know in order to contribute to FabCityOS and its different integrations. First of all, thank you for contributing to the PlanktoScope! The goal of this document is to provide everything you need to know in order to contribute to PlanktoScope.
There are several ways to join the development effort, share your progress with your build or just ask for help.
We are using slack as a communication platform between interested parties. You can [request to join by filling this form](https://docs.google.com/forms/d/e/1FAIpQLSfcod-avpzWVmWj42_hW1v2mMSHm0DAGXHxVECFig2dnKHxGQ/viewform).
This repository is also a good way to get involved. Please fill in an issue if you witnessed a bug in the software or hardware. If you are able, you can also join the development effort. Look through the [issues opened](https://github.com/PlanktonPlanet/PlanktoScope/labels/good%20first%20issue) and choose one that piques your interest. Let us know you want to work on it in the comments, we may even be able to guide your beginnings around the code.
- [Contributing](#contributing)
- [Assumptions](#assumptions) - [Assumptions](#assumptions)
- [How to Contribute](#how-to-contribute) - [How to Contribute](#how-to-contribute)
- [Development Workflow](#development-workflow) - [Development Workflow](#development-workflow)
@ -48,13 +55,13 @@ Each PR should also check if the generated file `manifests/fcoscore.yaml` is upd
You can generated the manifest with the command line: You can generated the manifest with the command line:
```bash ```bash
helm template fcoscore . | grep -v 'helm.sh/chart:\|app.kubernetes.io/managed-by:' > manifests/FabCityOS.yaml helm template fcoscore . | grep -v 'helm.sh/chart:\|app.kubernetes.io/managed-by:' > manifests/PlanktoScope.yaml
``` ```
Or just by comment the PR: Or just by comment the PR:
```txt ```txt
@FabCityOS sync-manifest @PlanktoScope sync-manifest
``` ```
Additionally, the CI will run a test to check if there are changes introduced to the charts. If changes were introduced, it will require you to update the Chart version. Additionally, the CI will run a test to check if there are changes introduced to the charts. If changes were introduced, it will require you to update the Chart version.
@ -89,7 +96,7 @@ Some notes on PRs:
## Release Process (for internal team only) ## Release Process (for internal team only)
FabCityOS tools follow the [Semantic Versioning Convention](https://semver.org/). PlanktoScope tools follow the [Semantic Versioning Convention](https://semver.org/).
### Automation to Rebase and Merge the PRs <!-- omit in toc --> ### Automation to Rebase and Merge the PRs <!-- omit in toc -->

View file

View file

@ -0,0 +1 @@
# Getting in touch with the community

View file

@ -0,0 +1,3 @@
# Trainer notes
## Organizing a Build Workshop

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

BIN
docs/assets/684423.full.pdf Normal file

Binary file not shown.

Binary file not shown.

0
docs/funding.md Normal file
View file

View file

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View file

@ -4,52 +4,51 @@
site_name: PlanktoScope site_name: PlanktoScope
site_description: An open and affordable imaging platform for \ site_description: An open and affordable imaging platform for \
citizen oceanography citizen oceanography
site_url: http://PlanktoScope.github.io/PlanktoScope site_url: https://planktoscope.curious.bio/
edit_uri: blob/master/docs repo_name: PlanktoScope
repo_name: PlanktoScope/PlanktoScope repo_url: https://code.curious.bio/curious.bio/planktoscope
repo_url: https://github.com/PlanktoScope/PlanktoScope
nav: nav:
- Introduction: - Introduction:
- Introduction: introduction.md - General: 00_introduction/introduction.md
- Specs: specs.md - Device Specification: 00_introduction/device_specification.md
- Research: research.md - Research: 00_introduction/research.md
- Hardware: - Hardware:
- Circularity: build_workshops.md - Manufacturing: 01_hardware/manufacturing.md
- Planktoscope HAT: hat_hardware.md - Supply Chain: 01_hardware/supply_chain.md
- Assembly: - Assembly Guide: 01_hardware/assembly_guide.md
- Assembly guide: images/assembly_guide.md - Maintenance and repair: 01_hardware/maintenance_repair.md
- Trainer Notes: trainer_notes.md - Disposal and recycling: 01_hardware/disposal_recycling.md
- Planktoscope HAT: 01_hardware/hat_hardware.md
- Collection devices: 01_hardware/collection_devices.md
- Software: - Software:
- Basic Install: easy_install.md - Basic Install: 02_software/easy_install.md
- Create Master SD Card: create_sd.md - Create the SD Card: 02_software/create_sd.md
- Expert Setup: expert_setup.md - Expert Setup: 02_software/expert_setup.md
- Remote Access: remote_access.md - Update Devicetree: 02_software/update_devicetree.md
- Internals:
- Software architecture: software_architecture.md
- MQTT Messages: mqtt_messages.md
- Update the Device Tree: update_device-tree.md
- Usage: - Usage:
- Getting started: images/getting_started.md - Getting started: 03_usage/getting_started.md
- User Interface: images/ui_guide.md - User Interface: 03_usage/ui_guide.md
- Collection devices: collection_devices.md - Remote Access: 03_usage/remote_access.md
- Community: - MQTT Messages: 03_usage/mqtt_messages.md
- people: people.md - Protocols:
- Community: community.md - Basic Primer: 04_protocols/basic_primer.md
- Code of Conduct: code_of_conduct.md
- Contribute: - Contribute:
- Hardware: hardware_development.md - Development Workflow: 05_contribute/contributions.md
- Software: edit_the_code.md - Hardware Development: 05_contribute/hardware_development.md
- Documentation: edit_this_doc.md - Software Development: 05_contribute/software_development.md
- Protocols: protocols.md - Software architecture: 05_contribute/software_architecture.md
- About: - Writing Documentation: 05_contribute/writing_documentation.md
- Community:
- Getting in touch: 06_community/community.md
- Trainer: 06_community/trainer.md
- Code of Conduct: 06_community/code_of_conduct.md
- Changelog: changelog.md - Changelog: changelog.md
- License: license.md - License: license.md
- Funding: funding.md - Funding: funding.md
- Contact: contact.md
theme: theme:
logo: assets/logo-white.png logo: images/logo-white.png
locale: en locale: en
name: material name: material
font: font: