Skip to content

Commit

Permalink
Merge pull request #20 from Jbsco/image-formatting
Browse files Browse the repository at this point in the history
restored some image formatting such as center-alignment and width.
  • Loading branch information
Jbsco authored Mar 21, 2024
2 parents 168fe7b + 1c1612b commit 2e10703
Show file tree
Hide file tree
Showing 5 changed files with 49 additions and 17 deletions.
16 changes: 12 additions & 4 deletions Documentation/using_Candle.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ The 3018 Pro CNC machine is capable of making use of the probe and heightmap fun

* Load the Gcode file generated by FlatCAM by selecting "File → Open". Select the contour CNC job.

![Example Gcode File Loaded in Candle](./images/Candle_GCode_Output.png)
<p align="center">
<img src="./images/Candle_GCode_Output.png" width="350" title="Example Gcode File Loaded in Candle">
</p>

* Once a Gcode file is opened, Candle enables the Heightmap function. Select "Create" (or optionally apply the modeled heightmap that was developed for rapid prototyping using the fixture design included in this repository).

Expand All @@ -27,7 +29,9 @@ The 3018 Pro CNC machine is capable of making use of the probe and heightmap fun

* Observe the arrangement of the graphical representation of the operation and visually verify that the machine will not crash before selecting "Probe". The routine will run until complete or stop if continuity was made at an unexpected point. If the Heightmap was not able to be completed, try adjusting the "Zt" or "Zb" parameters accordingly, or inspect for other issues, before trying again.

![Example Candle Heightmap Routine Being Performed](./images/Candle_Heightmapping.png)
<p align="center">
<img src="./images/Candle_Heightmapping.png" width="350" title="Example Candle Heightmap Routine Being Performed">
</p>

* With the Heightmap complete, close the Heightmap mode by selecting "Edit", and select the checkbox "Use Heightmap".

Expand All @@ -41,8 +45,12 @@ The 3018 Pro CNC machine is capable of making use of the probe and heightmap fun

* The routine should complete and the PCB will be ready for hole drilling operations. Hole drilling operations should be completed without changing the machine zero positioning, or else alignment will be difficult to achieve accurately. The hole drilling operation should be straightforward so long as the tool bit is changed without losing the machine positioning.

![Example Drill Gcode File Loaded in Candle](./images/Candle_GCode_Drl_Output.png)
<p align="center">
<img src="./images/Candle_GCode_Drl_Output.png" width="350" title="Example Drill Gcode File Loaded in Candle">
</p>

The routine should complete and the PCB will be ready for final processing or cutting operations.

![Example Populated PCB Rendered in KiCAD](./images/KiCAD_Render.png)
<p align="center">
<img src="./images/KiCAD_Render.png" width="350" title="Example Populated PCB Rendered in KiCAD">
</p>
30 changes: 22 additions & 8 deletions Documentation/using_FlatCAM.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,23 @@

* In FlatCAM, open the Gerber and the Excellon files to add them to the FlatCAM project.

![FlatCAM Open Dialogue](./images/flatcam_open.png)

<p align="center">
<img src="./images/flatcam_open.png" width="350" title="FlatCAM Open Dialogue">
</p>

* These objects may be placed far from the origin, so select all using the "Ctrl + A" shortcut, and Move to Origin using the "Shift + O" shortcut. It is important to select all objects to move them as a group, otherwise the drill objects will not be aligned to the contour objects.

![FlatCAM Opened Objects](./images/flatcam_opened.png)
<p align="center">
<img src="./images/flatcam_opened.png" width="350" title="FlatCAM Opened Objects">
</p>

## Generating Trace GCode

* Double-click the Gerber in the project tree side panel, then select "Isolation Routing".

![FlatCAM Side Panel](./images/flatcam_project_sidepanel.png)
<p align="center">
<img src="./images/flatcam_project_sidepanel.png" width="350" title="FlatCAM Side Panel">
</p>

* Right click the #1 tool in the Tools Table and delete it. We must set up a new tool to mill at the 0.1mm depth of cut using the lab's V-cutter bits.

Expand All @@ -24,7 +30,9 @@

* Change the Preprocessor to 'grbl_11', followed by "Generate CNCJob Object".

![FlatCAM Preprocessor](./images/FlatCAM_preproc.png)
<p align="center">
<img src="./images/FlatCAM_preproc.png" width="350" title="FlatCAM Preprocessor">
</p>

* The contour job is complete, select "Save CNC Code" or right click the CNC Job in the project tree side panel to save the Gcode for access with Candle later.

Expand All @@ -34,17 +42,23 @@

* Double click the Excellon drill file in the project tree side panel, and select "Excellon Editor" to make changes to the drills this operation will apply to. For example, edit all sizes to the same value to combine drills.

![FlatCAM Excellon in Side Panel](./images/flatcam_select_excellon.png)
<p align="center">
<img src="./images/flatcam_select_excellon.png" width="350" title="FlatCAM Excellon in Side Panel">
</p>

![FlatCAM Excellon Editor](./images/flatcam_excellon_editor.png)
<p align="center">
<img src="./images/flatcam_excellon_editor.png" width="350" title="FlatCAM Excellon Editor">
</p>

* Exit the editor and save changes. Select "Drilling Tool" and edit parameters accordingly. Since this is a separate operation from the contour, it will be critical that the CNC machine retains its positioning to ensure alignment. Keep this in mind when setting parameters for tool changes, if this option is selected.

* It is recommended to reduce Feedrate Z to 60 (300 may be too high and could cause damage to the board). Adjust Cut Z to a value that will completely drill through the board. If using the provided fixture, there will be ample clearance under the board.

* Select "Generate CNCJob Object" and save in the same manner as the contour operation.

![FlatCAM CNC Jobs](./images/flatcam_gcode_objs.png)
<p align="center">
<img src="./images/flatcam_gcode_objs.png" width="350" title="FlatCAM CNC Jobs">
</p>

These Gcode files may be opened directly in Candle for heightmap generation and running the machine.

Expand Down
8 changes: 6 additions & 2 deletions Documentation/using_Inkscape_JSCut.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,9 @@ Each SVG file can be opened in Inkscape to make these files compatible with jscu

"Ctrl + S" - Save SVG

![Example SVG Output from Inkscape](./images/Filter_DualOp-F_Cu.png)
<p align="center">
<img src="./images/Filter_DualOp-F_Cu.png" width="350" title="Example SVG Output from Inkscape">
</p>

jscut ingests an SVG file and allows configuring various types of toolpaths followed by export to Gcode. Since the PCB milling operation is a single pass at 0.1mm depth-of-cut (and potentially a second operation for pad and via holes), many settings are unused.

Expand All @@ -27,4 +29,6 @@ jscut ingests an SVG file and allows configuring various types of toolpaths foll

* Select "Save GCODE" to save the Gcode file.

![Example Toolpath Output from jscut](./images/JSCut.png)
<p align="center">
<img src="./images/JSCut.png" width="350" title="Example Toolpath Output from JScut">
</p>
8 changes: 6 additions & 2 deletions Documentation/using_KiCAD.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,15 @@ Designs start in a KiCAD project. It is possible to start immediately within the

The schematic editor looks and functions similarly to SPICE software, with usability improvements as well as functionality beneficial to full-stack design work. Components may be added to the KiCAD library, but the existing library is sufficient for intermediate designs. Components can be assigned a footprint, which also often includes a 3D model for rendering visuals and checking 3D space conflicts. Python script support extends functionality and allows for some automation, but is not necessary to produce competent results.

![Example Schematic Design in KiCAD](./images/KiCAD_Schematic.png)
<p align="center">
<img src="./images/KiCAD_Schematic.png" width="350" title="Example Schematic Design in KiCAD">
</p>

The PCB board editor can be entered from the schematic editor. The two documents are linked, and components in the schematic will be inserted into the board editor as footprints. Use the hotkey "F8" or select "Tools → Update PCB from Schematic", this will place missing footprints. Circuit nets are also shared between the documents. It is possible to auto-place footprints, but it is recommended to manually adjust and rotate components accordingly to make routing easier. The board editor has many layers to manipulate. Most important for prototyping purposes are the top copper layer and the edge cuts layer. The bottom layer and multiple layers beyond this are also accessible (board stackup settings may be edited at any time). Additional vias and PCB specific components that are not typically present on a circuit schematic can be placed in the same manner as in the schematic editor, with a large default library to explore. Pin headers, I/O vias and pads, connectors, and even active trace elements such as Bluetooth or tuned antennae are present and waiting for application in student projects!

![Circuit Board Design in KiCAD](./images/KiCAD_PCB.png)
<p align="center">
<img src="./images/KiCAD_PCB.png" width="350" title="Circuit Board Design in KiCAD">
</p>

Once a board design is ready to export, _the process will diverge depending on whether you are ingesting **gerber fabrication files with FlatCAM**, or **SVG files with Inkscape and jscut**. Both are effective for prototyping, though the SVG method tested poorly among students. If you opt to go this route, export your copper layer in color, select only the board area, and include edge cuts if you need those outlined in the milling operation. Otherwise, select "File → Fabrication Outputs → Gerbers" and select the layer you are working with. Default settings were found to work well. Select "Plot to create the Gerber file, and then select "Generate Drill Files" (being sure "Drill Units" is set to millimeters) to create the drill Excellon file. Default settings here were also found to work well. Several files are created, however we will only use two in FlatCAM.

Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,9 @@ The CNC machines located in Confluence Hall labs are being made available for sp

A 3D-printable fixture which fits 100x70mm copper-clad boards is provided as an STL file in this repository. This was designed specifically for this CNC machine and this process. It provides an easy clamping method with consistent repeatability.

![100x70mm Fixture Design](Documentation/images/3018_Fixture.png)
<p align="center">
<img src="Documentation/images/3018_Fixture.png" width="350" title="100x70mm Fixture Design">
</p>

## Software Used

Expand Down

0 comments on commit 2e10703

Please sign in to comment.