Skip to content
Snippets Groups Projects
Commit b2ee2773 authored by Dan Stone's avatar Dan Stone
Browse files

week 9 update post mill

parent b49d9025
No related branches found
No related tags found
No related merge requests found
Showing
with 243847 additions and 34 deletions
...@@ -494,6 +494,6 @@ Now it is time to sand ...@@ -494,6 +494,6 @@ Now it is time to sand
I hit an issue as my table top was 48 inches in diameter which is the exact range of the machine. The air cut looked I hit an issue as my table top was 48 inches in diameter which is the exact range of the machine. The air cut looked
great but when we ran the cut it was a bit off and so I had to recut a slightly smaller diameter of 47 inches. great but when we ran the cut it was a bit off and so I had to recut a slightly smaller diameter of 47 inches. (should be done laster this week)
...@@ -2,60 +2,246 @@ ...@@ -2,60 +2,246 @@
This week I worked on defining my final project idea and started to getting used to the documentation process. This week I worked on defining my final project idea and started to getting used to the documentation process.
## Research ## Board
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." This week I decided to redesign my board using the Seeed ESP32C3 shall.
> "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." Following Prof. Gershenfeld comments about pull up vs. pull down resistors I educated myself and now can simplify
my circuit by removing the pull down resistors and use the built in pull up resistors with some code changes you can
see [here](https://www.seeedstudio.com/blog/2020/02/21/pull-up-resistor-vs-pull-down-differences-arduino-guide/)
## Useful links ![Board Design](../images/imagW8/Design1.png)
- [Jekyll](http://jekyll.org) I used the SEEED and Fab libraries. I am still not sure what connectors to use for the button and motor/pump and so
- [Google](http://google.com) I just used the connectors in the Fab library.
- [Markdown](https://en.wikipedia.org/wiki/Markdown)
## Code Example I pulled up the ESP32ESP pinout map
Use the three backticks to separate code. ![Board Design](../images/imagW8/Design2.png)
then got to updating the schematic
![Board Design](../images/imagW8/Design3.png)
I moved to placing down the components
![Board Design](../images/imagW8/Design4.jpg)
And next was routing
![Board Design](../images/imagW8/Design5.jpg)
I finaly decided to shrink the foot print down a bit
![Board Design](../images/imagW8/Design6.jpg)
And now we can move to making the board
### Bantam milling
I used the Bantam mill and it was very straight forward.
First in Fusion, I went to the manufacturing menue and experoted the files
![](../images/imagW8/B1.jpg)
In Bantam I loaded the copper top and profile files
![](../images/imagW8/B2.jpg)
I used double sided tape and put the board in place
![](../images/imagW8/B4.jpg)
The machine made sure I loaded the right tips:
![](../images/imagW8/B3.jpg)
It ran through the cut
![](../images/imagW8/B5.jpg)
I cut 2 to make sure I had a back up without needed to set everything up again
![](../images/imagW8/B6.jpg)
I cleaned the board with soap and water
![](../images/imagW8/B7.jpg)
## Assembly
I only had 3 components to solder the ESP32C3, a resistor and LED as well as connectors for the buttons
## Coding
Here I wanted to try out Chat GPT 4.0 and so I asked him for simple blink code and he suggested
```c
// Pin number for the LED (use the GPIO number, not the board's pin number)
const int ledPin = 7;
// Time interval for the LED to be on and off (in milliseconds)
const unsigned long interval = 1000;
unsigned long previousMillis = 0;
void setup() {
// Set the LED pin as an output
pinMode(ledPin, OUTPUT);
}
void loop() {
// Get the current time
unsigned long currentMillis = millis();
// Check if the interval has passed
if (currentMillis - previousMillis >= interval) {
// Save the last time the LED state was toggled
previousMillis = currentMillis;
// Toggle the LED state
digitalWrite(ledPin, !digitalRead(ledPin));
}
}
``` ```
// the setup function runs once when you press reset or power the board
I loaded it and we had a blinking light
Next I asked Chat GPT to add a button that when pressed would trigger the LED to blink 5 times
Here is the suggested code
```C
const int ledPin = 7;
const int buttonPin = 2; // Change this to the GPIO number where the button is connected
const unsigned long interval = 1000;
unsigned long previousMillis = 0;
int flashCount = 0;
bool buttonPressed = false;
void setup() { void setup() {
// initialize digital pin LED_BUILTIN as an output. pinMode(ledPin, OUTPUT);
pinMode(LED_BUILTIN, OUTPUT); pinMode(buttonPin, INPUT_PULLUP); // Enable the internal pull-up resistor for the button
} }
// the loop function runs over and over again forever
void loop() { void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) unsigned long currentMillis = millis();
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW if (digitalRead(buttonPin) == LOW) { // Check if the button is pressed
delay(1000); // wait for a second buttonPressed = true;
}
if (buttonPressed && flashCount < 5) {
if (currentMillis - previousMillis >= interval) {
previousMillis = currentMillis;
digitalWrite(ledPin, !digitalRead(ledPin));
// Turn off the LED after it has been flashed an odd number of times
if (digitalRead(ledPin) == LOW) {
flashCount++;
}
}
} else if (flashCount >= 5) {
flashCount = 0;
buttonPressed = false;
}
} }
``` ```
## Gallery We have success!!!
## Milling in Fusion / Genmitsu 3020-Pro-Max
While I believe this is what we needed to get done for this week I also wanted to try and
I also wanted to try and mill the board by setting up the tool path in fusion and running a small CNC mill
I have at home the Genmitsu 3020-Pro-Max
## Board milling set up in Fusion
I spend time watching a number of tutorials [here](https://www.youtube.com/watch?v=V96JZ8JOm9Y) and [here](https://www.youtube.com/watch?v=kTAC7aWL024)
Set up was largley the same but they took different approach to the tool path choices.
Here is what I tried
First I exported the board to 3D board but made sure to uncheck the soldermask option as that will make selecting the copper
traces for milling easier
![Board milling](../images/imagW8/Design7.jpg)
I kept the board the 1-copper layers visible which is what I want to mill
![Board milling](../images/imagW8/Design71.jpg)
Next I moved the manufacturing workspace
![Board milling](../images/imagW8/Design72.jpg)
I started a new set up and selected the board as the model
![Board milling](../images/imagW8/Design74.jpg)
I change the top off set to 0
![Board milling](../images/imagW8/Design76.jpg)
## Tool path set up
I started by the 3D adaptive clearing tool path
![Board milling](../images/imagW8/Design8.jpg)
I choose a 1/8 end mill with aluminum roughing which is what they used in the tutorial
(this will turn out to be a mistake for my board)
![Board milling](../images/imagW8/Design81.jpg)
Next I set the bounding box to the shape of the board and change Tool containment to
"tool inside"
![Board milling](../images/imagW8/Design82.jpg)
![Board milling](../images/imagW8/Design84.jpg)
Then in the Model section I choose the copper traces
![Board milling](../images/imagW8/Design85.jpg)
Next I selected the board surface as the Bottom height
![Board milling](../images/imagW8/Design86.jpg)
Unchecked the "stock to leave" option
![Board milling](../images/imagW8/Design87.jpg)
what we can see here is that the tool was not cutting detailed enough.
![](../images/sample-photo.jpg) ![Board milling](../images/imagW8/Design9.jpg)
## Video So I went and reviewed the turtorial and some more google searches and decided to make some changes:
### From Vimeo I changed the tool to a smaller one
<iframe src="https://player.vimeo.com/video/10048961" width="640" height="480" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe> ![Board milling](../images/imagW8/Design91.jpg)
<p><a href="https://vimeo.com/10048961">Sound Waves</a> from <a href="https://vimeo.com/radarboy">George Gally (Radarboy)</a> on <a href="https://vimeo.com">Vimeo</a>.</p>
### From Youtube and change the ramp type to plunge
<iframe width="560" height="315" src="https://www.youtube.com/embed/jjNgJFemlC4" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe> ![Board milling](../images/imagW8/Design92.jpg)
## 3D Models It looks much better
<div class="sketchfab-embed-wrapper"><iframe width="640" height="480" src="https://sketchfab.com/models/658c8f8a2f3042c3ad7bdedd83f1c915/embed" frameborder="0" allow="autoplay; fullscreen; vr" mozallowfullscreen="true" webkitallowfullscreen="true"></iframe> ![Board milling](../images/imagW8/Design94.jpg)
<p style="font-size: 13px; font-weight: normal; margin: 5px; color: #4A4A4A;"> Now to add the cut option
<a href="https://sketchfab.com/models/658c8f8a2f3042c3ad7bdedd83f1c915?utm_medium=embed&utm_source=website&utm_campaign=share-popup" target="_blank" style="font-weight: bold; color: #1CAAD9;">Dita&#39;s Gown</a> \ No newline at end of file
by <a href="https://sketchfab.com/francisbitontistudio?utm_medium=embed&utm_source=website&utm_campaign=share-popup" target="_blank" style="font-weight: bold; color: #1CAAD9;">Francis Bitonti Studio</a>
on <a href="https://sketchfab.com?utm_medium=embed&utm_source=website&utm_campaign=share-popup" target="_blank" style="font-weight: bold; color: #1CAAD9;">Sketchfab</a>
</p>
</div>
##########
THIS POSTPROCESSOR IS A SAMPLE FOR MACHINE SIMULATION USAGE, IT DOES NOT OUTPUT ANY NC PROGRAM.
For more information on how to update your post processor with machine simulation support please visit:
https://knowledge.autodesk.com/community/article/356406
##########
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
330 63.50 74.93 180.00 R1206FAB
D2 72.39 74.93 180.00 LED_RED LEDC3216X110N_R
U1 71.12 89.38 0.00 XIAO-ESP32C3 XIAO-ESP32C3-MODULE14P-2.54-21X17.8MM
Partlist exported from Team Hub: Stone Project: FabAcademy Board: vms32 v10 at 3/20/2023 3:38 PM
Qty Value Device Package Parts Description CATEGORY COLOR DESCRIPTION MANUFACTURER MPN OPERATING_TEMP PART_STATUS ROHS_COMPLIANT SERIES SUB-CATEGORY THERMALLOSS TYPE VALUE
1 RES-US1206FAB R1206FAB 330 Resistor (US Symbol)
1 LED_RED LED_CHIPRED-3216 LEDC3216X110N_R D2 LED - Generic Opto-Electronic Red LED LED_RED
1 TERM-1X02-FABLAB TERM-1X02-FABLAB ED555DS-2DS PUMP/MOTOR 3.5mm terminal block, 2 positions ED555-2DS as found in the fablab inventory.
2 TERM-1X03'-FABLAB' TERM-1X03'-FABLAB' ED555DS-3DS BUTTONS, POWER 3.5mm terminal block, 3 positions ED555-3DS as found in the fablab inventory.
1 XIAO-ESP32C3 XIAO-ESP32C3 XIAO-ESP32C3-MODULE14P-2.54-21X17.8MM U1 Seeed Studio XIAO ESP32C3 - Espressif ESP32-C3 WiFi BLE Microcontroller - 32-bit 160MHz RISC-V processorSeeed SKU: 113991054
M48
;GenerationSoftware,Autodesk,EAGLE,9.7.0*%
;CreationDate,2023-03-20T19:38:48Z*%
FMAT,2
ICI,OFF
METRIC,TZ,000.000
T1C1.200
%
G90
M71
T1
X50800Y90480
X50800Y93980
X50800Y97480
X50800Y85620
X50800Y82120
X87630Y97480
X87630Y93980
X87630Y90480
M30
\ No newline at end of file
G04 EAGLE Gerber RS-274X export*
G75*
%MOMM*%
%FSLAX34Y34*%
%LPD*%
%INBottom Copper*%
%IPPOS*%
%AMOC8*
5,1,8,0,0,1.08239X$1,22.5*%
G01*
G04 Define Apertures*
%ADD10C,2.184400*%
D10*
X508000Y904800D03*
X508000Y939800D03*
X508000Y974800D03*
X508000Y856200D03*
X508000Y821200D03*
X876300Y974800D03*
X876300Y939800D03*
X876300Y904800D03*
M02*
G04 EAGLE Gerber RS-274X export*
G75*
%MOMM*%
%FSLAX34Y34*%
%LPD*%
%INTop Copper*%
%IPPOS*%
%AMOC8*
5,1,8,0,0,1.08239X$1,22.5*%
G01*
G04 Define Apertures*
%ADD10R,1.270000X1.905000*%
%ADD11C,2.184400*%
%ADD12R,3.000000X2.000000*%
%ADD13R,3.500000X3.500000*%
%ADD14C,1.500000*%
%ADD15R,2.300000X1.300000*%
%ADD16R,0.961800X1.711800*%
%ADD17C,0.457200*%
D10*
X651510Y749300D03*
X618490Y749300D03*
D11*
X508000Y904800D03*
X508000Y939800D03*
X508000Y974800D03*
X508000Y856200D03*
X508000Y821200D03*
D12*
X626200Y812800D03*
X626200Y838200D03*
X626200Y863600D03*
X626200Y889000D03*
X626200Y914400D03*
X626200Y939800D03*
X626200Y965200D03*
X796200Y812800D03*
X796200Y838200D03*
X796200Y863600D03*
X796200Y889000D03*
X796200Y914400D03*
X796200Y939800D03*
X796200Y965200D03*
D13*
X732200Y883000D03*
D14*
X698500Y974800D03*
X723900Y974800D03*
X723900Y949400D03*
X698500Y949400D03*
D15*
X666200Y912000D03*
X666200Y893000D03*
D14*
X698500Y924000D03*
X723900Y924000D03*
D11*
X876300Y974800D03*
X876300Y939800D03*
X876300Y904800D03*
D16*
X739150Y749300D03*
X708650Y749300D03*
D17*
X631900Y962100D02*
X635000Y965200D01*
X626200Y965200D01*
X571500Y965200D01*
X558800Y977900D01*
X511100Y977900D02*
X508000Y974800D01*
X511100Y977900D02*
X558800Y977900D01*
X508000Y939800D02*
X626200Y939800D01*
X509550Y903250D02*
X508000Y904800D01*
X558800Y914400D02*
X626200Y914400D01*
X558800Y914400D02*
X546100Y901700D01*
X511100Y901700D01*
X509550Y903250D01*
X596900Y749300D02*
X618490Y749300D01*
X596900Y749300D02*
X584200Y762000D01*
X584200Y825500D01*
X596900Y838200D01*
X626200Y838200D01*
X635000Y838200D01*
X651510Y749300D02*
X708650Y749300D01*
X774700Y939800D02*
X796200Y939800D01*
X774700Y939800D02*
X762000Y927100D01*
X762000Y800100D01*
X774700Y787400D01*
X774700Y749300D01*
X739150Y749300D01*
X796200Y939800D02*
X876300Y939800D01*
X510150Y823350D02*
X508000Y821200D01*
X584200Y863600D02*
X626200Y863600D01*
X584200Y863600D02*
X571500Y850900D01*
X571500Y825500D01*
X512300Y825500D01*
X510150Y823350D01*
X508000Y856200D02*
X515400Y863600D01*
X558800Y863600D01*
X584200Y889000D01*
X626200Y889000D01*
X860500Y904800D02*
X876300Y904800D01*
X860500Y904800D02*
X850900Y914400D01*
X796200Y914400D01*
X873200Y977900D02*
X876300Y974800D01*
X847800Y974800D01*
X838200Y965200D01*
X796200Y965200D01*
X787400Y965200D01*
M02*
{
"Header": {
"Comment": "All values are metric (mm)",
"CreationDate": "2023-03-20T19:38:48Z",
"GenerationSoftware": {
"Application": "Fusion 360 Electronics",
"Vendor": "Autodesk",
"Version": "9.7.0"
},
"Part": "Single"
},
"Overall": {
"BoardThickness": 1.57,
"LayerNumber": 2,
"Name": {
"ProjectId": "vms32 v7"
},
"Owner": "Dan Stone <dan@909street.com>",
"Size": {
"X": 48.24,
"Y": 28.88
}
}
}
G04 EAGLE Gerber RS-274X export*
G75*
%MOMM*%
%FSLAX34Y34*%
%LPD*%
%IN*%
%IPPOS*%
%AMOC8*
5,1,8,0,0,1.08239X$1,22.5*%
G01*
G04 Define Apertures*
%ADD10C,0.254000*%
D10*
X444500Y711200D02*
X926900Y711200D01*
X926900Y1000000D01*
X444500Y1000000D01*
X444500Y711200D01*
M02*
G04 EAGLE Gerber RS-274X export*
G75*
%MOMM*%
%FSLAX34Y34*%
%LPD*%
%INSilkscreen Bottom*%
%IPPOS*%
%AMOC8*
5,1,8,0,0,1.08239X$1,22.5*%
G01*
G04 Define Apertures*
M02*
G04 EAGLE Gerber RS-274X export*
G75*
%MOMM*%
%FSLAX34Y34*%
%LPD*%
%INSoldermask Bottom*%
%IPPOS*%
%AMOC8*
5,1,8,0,0,1.08239X$1,22.5*%
G01*
G04 Define Apertures*
%ADD10C,2.387600*%
D10*
X508000Y904800D03*
X508000Y939800D03*
X508000Y974800D03*
X508000Y856200D03*
X508000Y821200D03*
X876300Y974800D03*
X876300Y939800D03*
X876300Y904800D03*
M02*
G04 EAGLE Gerber RS-274X export*
G75*
%MOMM*%
%FSLAX34Y34*%
%LPD*%
%INSoldermask Top*%
%IPPOS*%
%AMOC8*
5,1,8,0,0,1.08239X$1,22.5*%
G01*
G04 Define Apertures*
%ADD10R,1.473200X2.108200*%
%ADD11C,2.387600*%
%ADD12R,3.203200X2.203200*%
%ADD13R,3.703200X3.703200*%
%ADD14C,1.703200*%
%ADD15R,2.503200X1.503200*%
%ADD16R,1.165000X1.915000*%
D10*
X651510Y749300D03*
X618490Y749300D03*
D11*
X508000Y904800D03*
X508000Y939800D03*
X508000Y974800D03*
X508000Y856200D03*
X508000Y821200D03*
D12*
X626200Y812800D03*
X626200Y838200D03*
X626200Y863600D03*
X626200Y889000D03*
X626200Y914400D03*
X626200Y939800D03*
X626200Y965200D03*
X796200Y812800D03*
X796200Y838200D03*
X796200Y863600D03*
X796200Y889000D03*
X796200Y914400D03*
X796200Y939800D03*
X796200Y965200D03*
D13*
X732200Y883000D03*
D14*
X698500Y974800D03*
X723900Y974800D03*
X723900Y949400D03*
X698500Y949400D03*
D15*
X666200Y912000D03*
X666200Y893000D03*
D14*
X698500Y924000D03*
X723900Y924000D03*
D11*
X876300Y974800D03*
X876300Y939800D03*
X876300Y904800D03*
D16*
X739150Y749300D03*
X708650Y749300D03*
M02*
G04 EAGLE Gerber RS-274X export*
G75*
%MOMM*%
%FSLAX34Y34*%
%LPD*%
%INSolderpaste Bottom*%
%IPPOS*%
%AMOC8*
5,1,8,0,0,1.08239X$1,22.5*%
G01*
G04 Define Apertures*
M02*
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment