asamasach commited on
Commit
77d75ba
ยท
verified ยท
1 Parent(s): cce807d

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +172 -33
README.md CHANGED
@@ -1,48 +1,187 @@
1
  ---
2
- title: Docs
3
- emoji: ๐ŸŒ–
4
- colorFrom: green
5
- colorTo: pink
6
- sdk: docker
7
- pinned: false
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
  ---
9
 
10
- To get started working with quarto we recommend you first [install quarto](https://quarto.org/docs/get-started/) locally so that you can render the site without Docker.
11
- We also recommend the [Quarto VS Code Extension](https://marketplace.visualstudio.com/items?itemName=quarto.quarto) which provides syntax highlighting, code completion, a preview button and more.
 
 
12
 
13
- The quarto source is located in `src` and you can preview the site with:
14
 
15
- ```
16
- quarto preview src
17
- ```
18
 
19
- A web browser should open up with a live preview of the site.
20
 
21
- ## Making changes
 
 
 
 
 
 
 
 
22
 
23
- The `src/_quarto.yml` contains the site-level configuration for the quarto website and tells quarto which files to render, and how they should be organized.
24
- For example if you wanted to modify the [site navigation](https://quarto.org/docs/reference/site-navigation.html) you should modify this file.
25
 
26
- Quarto can render markdown, ipynb, and .qmd files, and you can mix formats in a single document.
 
 
 
 
27
 
28
- ## Executing code
29
 
30
- One of the main virtues of Quarto is that it lets you combine code and text in a single document.
31
- By default if you include a code chunk in your document, Quarto will execute that code and include the output in the rendered document.
32
- This is great for reproducibility and for creating documents that are always up-to-date.
33
 
34
- ```{python}
35
- import seaborn as sns
36
- import matplotlib.pyplot as plt
37
 
38
- # Sample data
39
- tips = sns.load_dataset("tips")
40
 
41
- # Create a seaborn plot
42
- sns.set_style("whitegrid")
43
- g = sns.lmplot(x="total_bill", y="tip", data=tips, aspect=2)
44
- g = (g.set_axis_labels("Total bill (USD)", "Tip").set(xlim=(0, 60), ylim=(0, 12)))
45
 
46
- plt.title("Tip by Total Bill")
47
- plt.show()
48
- ```
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ title: "Monitait Step-by-Step User Guide"
3
+ subtitle: "Hardware (WatcherJET 3.0) & AI Training Platform"
4
+ author: "Monitait.com"
5
+ date: "2025-10-13"
6
+ format:
7
+ html:
8
+ toc: true
9
+ toc-depth: 4
10
+ toc-location: left
11
+ theme: cosmo
12
+ code-fold: true
13
+ grid:
14
+ sidebar-width: 300px
15
+ body-width: 900px
16
+ margin-width: 300px
17
+ pdf:
18
+ toc: true
19
+ keep-tex: true
20
+ documentclass: scrreprt
21
+ classoption: ["paper=a4", "twoside=false"]
22
  ---
23
 
24
+ ::: {.callout-note}
25
+ **Version:** 1.0 โ€ข **Date:** October 13, 2025
26
+ **Powered by Monitait** โ€“ monitait.com
27
+ :::
28
 
29
+ # Chapter 1 โ€“ Hardware & WatcherJET 3.0
30
 
31
+ ![WatcherJET 3.0 Overview](images/watcherjet-cover.png){width=80% fig-align=center}
 
 
32
 
33
+ ## Table of Contents โ€“ Setup: Collecting Data
34
 
35
+ - Step 1: Connect the sensors
36
+ - External machine signal
37
+ - Push button
38
+ - Obstacle sensor
39
+ - Encoder
40
+ - RS485 protocol
41
+ - Step 2: Connect the power supply
42
+ - Step 3: Provide an access point
43
+ - Step 4: Register at console.monitait.com
44
 
45
+ ## Table of Contents โ€“ Setup: Taking Action
 
46
 
47
+ - Step 1: Connect the high-current power supply
48
+ - Step 2: Set up the emitters
49
+ - Step 3: Connect the actuators
50
+ - Controls and Signals (Keys & Indicators)
51
+ - QC Machines & Wiring Schematics
52
 
53
+ ### Step 1: Connect the Sensors
54
 
55
+ #### External Machine Signal
56
+ ![External Machine Signal](images/sensors-external.png){width=90%}
 
57
 
58
+ - **Production Count**: Connect any 12โ€“24 V signal to OK inputs (3 & 4)
59
+ - **Counting Defects**: Connect ejector/machine NG signal to NG inputs (5 & 6)
60
+ โ†’ Bidirectional & opto-isolated
61
 
62
+ #### Push Button
63
+ ![Push Button Wiring](images/sensors-pushbutton.png){width=90%}
64
 
65
+ **Production Count** โ†’ OK (4) + GND (1), bridge OK (3) โ†’ +V (2)
66
+ **Defect Count** โ†’ same logic using NG (6 & 5)
 
 
67
 
68
+ #### Obstacle Sensor
69
+ ![Obstacle Sensor Wiring](images/sensors-obstacle.png){width=90%}
70
+
71
+ Black โ†’ OK/NG input, Brown โ†’ +V (2), Blue โ†’ GND (1), bridge remaining OK/NG โ†’ +V (2)
72
+
73
+ #### Encoder & RS485
74
+ Encoder: White โ†’ NG (6), Black โ†’ OK (4), Brown โ†’ +V, Blue โ†’ GND
75
+ RS485: A โ†’ (8), B โ†’ (7)
76
+
77
+ ### Step 2: Connect the Power Supply
78
+ **Specifications**
79
+
80
+ | Parameter | Value |
81
+ |------------------------|-----------------|
82
+ | Input/Output Voltage | 12โ€“24 V DC |
83
+ | Max Output Current | 2 A |
84
+ | Operating Temperature | โ€“10 ยฐC to 50 ยฐC |
85
+
86
+ ### Step 3: Provide an Access Point
87
+ **Best Practice:** Wired LAN + firewall rule `*.monitait.com`
88
+ **Temporary:** Mobile hotspot โ†’ Name: `Monitait`, Password: `p@ssword`
89
+
90
+ ### Step 4: Register at console.monitait.com
91
+ Add Watcher โ†’ Enter Registration ID โ†’ Set station & advanced options (multiplication factor, timeout, etc.)
92
+
93
+ # Chapter 2 โ€“ AI Training
94
+
95
+ ![AI Training Cover](images/ai-training-cover.png){width=70% fig-align=center}
96
+
97
+ ## Table of Contents
98
+
99
+ - Step 1: AI Training Platform
100
+ - Step 2: Administration (Create tasks & upload images)
101
+ - Step 3: Evaluation
102
+ - Step 4: Deploy trained weights
103
+
104
+ ### Step 1: AI Training Platform
105
+
106
+ ![Task List](images/ai-task-list.png){width=95%}
107
+
108
+ #### Basic Tools โ€“ How to Annotate
109
+ ![Basic Annotation](images/ai-basic-tools.png){width=95%}
110
+
111
+ 1. Confirm correct task
112
+ 2. Choose category
113
+ 3. Draw bounding box
114
+ 4. Save โ†’ next image
115
+
116
+ #### Advanced Tools
117
+ ![Advanced Tools](images/ai-advanced-tools.png){width=95%}
118
+
119
+ - Image ID display
120
+ - Show/Hide panels
121
+ - Pan & zoom (Ctrl + scroll)
122
+ - Edit / delete boxes
123
+
124
+ #### Tips & Hints
125
+ ![Tips](images/ai-tips.png){width=90%}
126
+
127
+ - Keyboard shortcuts: 1โ€“9, QWERTYUI for categories
128
+ - Overlapping objects โ†’ draw elsewhere โ†’ drag, or hide with eye icon
129
+ - Add metadata via โ€œ+โ€ in right panel
130
+
131
+ ### Step 2: Administration โ€“ Create Tasks & Upload Images
132
+
133
+ 1. Tasks โ†’ **+ NEW TASK**
134
+ - Basic Info (name, quantity, type, dates, etc.)
135
+ - Labels โ†’ define categories & colors
136
+ 2. After creation โ†’ โ‹ฎ โ†’ **Upload Images** (.jpg, .png, .jpeg)
137
+
138
+ **Best Practices**
139
+ - Use visually distinct categories
140
+ - Always label main object (e.g., โ€œbottleโ€)
141
+ - Use descriptive IDs (bottle-pk-100)
142
+ - Monitait team handles training & augmentation
143
+
144
+ ### Step 3: Evaluation
145
+
146
+ #### What is Evaluation?
147
+ Testing the model on unseen data โ†’ measures real-world performance.
148
+
149
+ #### Key Metrics
150
+ - **TP** โ€“ correctly detected defect
151
+ - **FP** โ€“ false alarm
152
+ - **FN** โ€“ missed defect
153
+ - **TN** โ€“ correctly identified good item
154
+
155
+ | Metric | Formula | Meaning |
156
+ |----------|----------------------------------|------------------------------------------|
157
+ | Precision| TP / (TP + FP) | How many detections were correct |
158
+ | Recall | TP / (TP + FN) | How many real defects were found |
159
+ | F1-Score | 2 ร— (P ร— R) / (P + R) | Balanced score |
160
+ | mAP | Mean Average Precision (0โ€“1) | Overall model quality (higher = better) |
161
+
162
+ #### Tips to Increase Accuracy & Recall
163
+ - Diverse dataset (lighting, angles, backgrounds)
164
+ - Tight, consistent bounding boxes
165
+ - Multiple reviewers
166
+ - Avoid similar/confusing categories
167
+ - Consult Monitait team for optimal augmentations
168
+
169
+ ### Step 4: Deploy Trained Model
170
+
171
+ Each successful training creates:
172
+ - `best.pt` (final weights)
173
+ - Unique **Training ID** (record it!)
174
+
175
+ **Deployment Steps**
176
+ 1. Verify new `best.pt` performs better on sample images
177
+ 2. Copy to machine:
178
+ `/home/projects/inference/best.pt`
179
+ 3. Restart the inference system
180
+
181
+ The new model is now live.
182
+
183
+ ---
184
+
185
+ ::: {.callout-tip}
186
+ For technical support or custom training strategies, contact the Monitait team at **monitait.com**
187
+ :::