Skip to content
Snippets Groups Projects
README.md 3.58 KiB
Newer Older
Jingyan Ling's avatar
Jingyan Ling committed
## ENGINEERING JOURNAL
### Jingyan Ling
Jingyan Ling's avatar
Jingyan Ling committed
### 06/27/2019 (Thur)
Jingyan Ling's avatar
Jingyan Ling committed
- Compile `OldRoCo` [repo](https://git.uclalemur.com/mehtank/oldroco)
  - Record of modification:
    - ++line 8 of `vstart.sh`
    - --> `pip install -r requirements.txt --user`
- Export `paperbot` dxf file : `graph-silhouette.dxf` to `OnShape`
  - Record of Tips:
    - Onshape does not read dxf file as its own saved unit. Manual settings needed when import.
Jingyan Ling's avatar
Jingyan Ling committed
    - ![onshape_dxf_unit](journal_media/onshape_dxf_unit.png)
Jingyan Ling's avatar
Jingyan Ling committed
- Draw circuit diagram as CAD on `Onshape`
  - Multiple connection approaches:
    - `Cross` shape of `0.039 in`
    - `Cross` shape of `0.049 in`
    - `Octangular` shape of `0.049 in`
Jingyan Ling's avatar
Jingyan Ling committed
    - ![connection_approaches.png](journal_media/connection_approaches.png)
    - ![actual_connection_cuts.JPG](journal_media/actual_connection_cut.JPG)
Jingyan Ling's avatar
Jingyan Ling committed
  - Note and issue:
   - `Octangular` shape is the best connection approach so far, but none of approach has stable conductivity. More research is needed.
    - Scratches can be made easily when attaching microcontroller to the sheet. Potential disconnection may occur due to such scratches on metal layer.
- Export 2D CAD drawing with PCB to SVG for silhouette cameo 
  - Record of Tips:
    - `OnShape` unit need to be consisted with unit setting in `Inkscape` (default: mm)
  - Plugin `Inkscape-silhouette` cannot take multiple types of trace for cutting. 
Jingyan Ling's avatar
Jingyan Ling committed
    - Different trace (especially cut and etching) need to be sent separately. Use `coordinate tool` of `Inkscape` to ensure separated cuts have same origin. 
  - TODO:
    - Cut and etching from same `Inkscape` file

Jingyan Ling's avatar
Jingyan Ling committed
###  06/28/2019 (Fri)
Jingyan Ling's avatar
Jingyan Ling committed

Jingyan Ling's avatar
Jingyan Ling committed
- Confirm that copper tape has better conductivity than aluminum sheet when attaching microcontroller pins through `H-shape` cut
  - Copper tape is harder to be scratched, which provides less risk of disconnection during assessmbly.

- Research on PCB editor
  - EAGLE
    - EAGLE cannot import `.pcb` file
    - `svg` can be exported but not imported
    - Custom library needed if doing schematic design
  - KiCad
    - Can import `.pcb` file
    - `svg` can be exported but not imported
  - LayoutEditor
    - support multiply file type
    - `svg` can be exported with different color makers as multiple layers
    - include open-sourced auto-router `freerouting`
Jingyan Ling's avatar
Jingyan Ling committed
- Auto-routing package:
  - TopoR
  - Python-PCB
  - FreeRouting
Jingyan Ling's avatar
Jingyan Ling committed

Jingyan Ling's avatar
Jingyan Ling committed

- Approaches:
Jingyan Ling's avatar
Jingyan Ling committed
  - `A`. convert SVG/DXF file to schematic/board design of PCB.  Use KiCAD or EAGLE to do autorouting.
  - `B`. develop algorithm on auto routing for single layer svg/dxf file. (path finding problem)
Jingyan Ling's avatar
Jingyan Ling committed
##### Approach `A`
Jingyan Ling's avatar
Jingyan Ling committed
-  Use regular shape board for PCB in KiCAD
   - image processing: divide alternative shape of `paperbot` to multiple rectangles (openCv)
   
Jingyan Ling's avatar
Jingyan Ling committed
   - Pull required connections and place additional header pins around edges of each rectangle
Jingyan Ling's avatar
Jingyan Ling committed

- Make each connection pin to be two parallel connections so auto-router does parallel trace for each wiring.
Jingyan Ling's avatar
Jingyan Ling committed
  - Etching a pair of parallel trace provides isolation, and leave the space between traces to be conductible.

- Build Library for schematic design
  - Schematic design helps with router to know desired connection
Jingyan Ling's avatar
Jingyan Ling committed
  - Additional header pins at each side of kink mark

### 06/28/2019 (Sat)
##### Approach `B`
- Potential needed functions of packages
  
  - A package enable drawing through scripts on SVG/DXF file
  - A script that pulls out pins' coordinate on paper chassis
  - Or a image process package (OpenCV) that reads pins' coordinate on paper chassis
  - A package solves multi-node path finding problem
  
- Python Pathfinding package:
  - [pathfinding](https://pypi.org/project/pathfinding/#description)