docs: shematics (#12)
<!-- Bravo pour la PR, quelque note pour que tout se passe au mieux :D - Lier la PR a une issue si elle existe! - Assurez-vous que le nom de la PR respecte les règles (voir CONTRIBUTING.md) - faites des rebase pour valider la PR - Assurez-vous que le CI/CD est au vert --> Co-authored-by: Clement <c.boesmier@aptatio.com> Reviewed-on: #12
This commit is contained in:
parent
258725e8c9
commit
e4f009b63e
77
docs/Schématics/Class.puml
Normal file
77
docs/Schématics/Class.puml
Normal file
@ -0,0 +1,77 @@
|
||||
@startuml class
|
||||
|
||||
hide empty members
|
||||
|
||||
|
||||
class Dolibarr {
|
||||
+ String getDestination(String tagID)
|
||||
+ String createStockMovement(String tagID, String warehouseId)
|
||||
}
|
||||
|
||||
package "Managers" {
|
||||
abstract AManager {
|
||||
# ILCDScreen lcd
|
||||
# IServoMotor servo
|
||||
# IGRBL grbl
|
||||
# INFCReader nfc
|
||||
}
|
||||
|
||||
class WarehouseManager
|
||||
|
||||
WarehouseManager .|> AManager
|
||||
}
|
||||
|
||||
package "Components" {
|
||||
package "NFCReader" {
|
||||
interface INFCReader {
|
||||
{abstract} char* read()
|
||||
{abstract} bool hasTag()
|
||||
}
|
||||
class RC522
|
||||
RC522 .|> INFCReader
|
||||
}
|
||||
|
||||
package "LCDScreen" {
|
||||
interface ILCDScreen {
|
||||
{abstract} void clearScreen()
|
||||
{abstract} void draw(int x, int y, int h, int w)
|
||||
{abstract} void drawRect(int x, int y, int h, int w)
|
||||
}
|
||||
class M5LCD
|
||||
M5LCD .|> ILCDScreen
|
||||
}
|
||||
|
||||
package "GRBL" {
|
||||
interface IGRBL {
|
||||
{abstract} drive(int x, int y, int z, int step)
|
||||
{abstract} step(int s)
|
||||
}
|
||||
class M5GRBL
|
||||
M5GRBL .|> IGRBL
|
||||
}
|
||||
|
||||
package "ServoMotor" {
|
||||
interface IServoMotor {
|
||||
{abstract} goLeft()
|
||||
{abstract} goRight()
|
||||
{abstract} goMiddle()
|
||||
}
|
||||
class ServoMotor
|
||||
ServoMotor .|> IServoMotor
|
||||
}
|
||||
}
|
||||
|
||||
class Program {
|
||||
+ Program()
|
||||
+ void loop
|
||||
}
|
||||
|
||||
AManager <-- IServoMotor
|
||||
AManager <-- IGRBL
|
||||
AManager <-- ILCDScreen
|
||||
AManager <-- INFCReader
|
||||
|
||||
Program <-- WarehouseManager
|
||||
Program <-- Dolibarr
|
||||
|
||||
@enduml
|
22
docs/Schématics/Hardware.puml
Normal file
22
docs/Schématics/Hardware.puml
Normal file
@ -0,0 +1,22 @@
|
||||
@startuml hard wiring
|
||||
|
||||
cloud {
|
||||
[Dolibarr]
|
||||
}
|
||||
|
||||
package "Convoyeur"{
|
||||
[M5 Core]
|
||||
[Lecteur NFC] as nfc
|
||||
[Servo Moteur] as servo
|
||||
[GRBL]
|
||||
[Stepper Moteur] as Stepper
|
||||
}
|
||||
|
||||
|
||||
[Dolibarr] <-- [M5 Core] : API
|
||||
[M5 Core] --> servo : IO
|
||||
[M5 Core] <-- nfc : IC2
|
||||
[M5 Core] --> [GRBL] : SPI
|
||||
[GRBL] --> Stepper
|
||||
|
||||
@enduml
|
Loading…
x
Reference in New Issue
Block a user