upload CAD and Code from instructables
This commit is contained in:
		
							parent
							
								
									85ab0568af
								
							
						
					
					
						commit
						a5d3c03b7c
					
				
							
								
								
									
										
											BIN
										
									
								
								CAD/googles_a.stl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								CAD/googles_a.stl
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								CAD/hat_a.stl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								CAD/hat_a.stl
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								CAD/hat_b.stl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								CAD/hat_b.stl
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								CAD/hinge_bottom.stl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								CAD/hinge_bottom.stl
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								CAD/hinge_top.stl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								CAD/hinge_top.stl
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								CAD/servo_holder.stl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								CAD/servo_holder.stl
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										93
									
								
								Firmware/SafetyHat.ino
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								Firmware/SafetyHat.ino
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,93 @@ | |||||||
|  | // Code for the Eye Protection Hat by Görkem Bozkurt (https://gorkem.cc)
 | ||||||
|  | // Based on the example sound level sketch from Adafruit(https://learn.adafruit.com/adafruit-microphone-amplifier-breakout/measuring-sound-levels)
 | ||||||
|  | // details here:
 | ||||||
|  | 
 | ||||||
|  | #include <Servo.h> | ||||||
|  | 
 | ||||||
|  | float sensitivity = 3; // a value between 0 and 3.30
 | ||||||
|  | 
 | ||||||
|  | Servo meservo; | ||||||
|  | const int sampleWindow = 50; // Sample window width in mS (50 mS = 20Hz)
 | ||||||
|  | unsigned int sample; | ||||||
|  | int led = 10; | ||||||
|  | bool isUp = true; | ||||||
|  | int c = 0; | ||||||
|  | 
 | ||||||
|  | void setup()  | ||||||
|  | { | ||||||
|  |    meservo.attach(2); | ||||||
|  |    pinMode(led,OUTPUT); | ||||||
|  |    Serial.begin(9600); | ||||||
|  |    meservo.write(40); | ||||||
|  |    delay(1000); | ||||||
|  |    meservo.detach(); | ||||||
|  | } | ||||||
|  |   | ||||||
|  |   | ||||||
|  | void loop()  | ||||||
|  | 
 | ||||||
|  | { | ||||||
|  |    unsigned long startMillis= millis();  // Start of sample window
 | ||||||
|  |    unsigned int peakToPeak = 0;   // peak-to-peak level
 | ||||||
|  |   | ||||||
|  |    unsigned int signalMax = 0; | ||||||
|  |    unsigned int signalMin = 1024; | ||||||
|  |   | ||||||
|  |    // collect data for 50 mS
 | ||||||
|  |    while (millis() - startMillis < sampleWindow) | ||||||
|  |    { | ||||||
|  |       sample = analogRead(1); | ||||||
|  |       if (sample < 1024)  // toss out spurious readings
 | ||||||
|  |       { | ||||||
|  |          if (sample > signalMax) | ||||||
|  |          { | ||||||
|  |             signalMax = sample;  // save just the max levels
 | ||||||
|  |          } | ||||||
|  |          else if (sample < signalMin) | ||||||
|  |          { | ||||||
|  |             signalMin = sample;  // save just the min levels
 | ||||||
|  |          } | ||||||
|  |       } | ||||||
|  |    } | ||||||
|  |    peakToPeak = signalMax - signalMin;  // max - min = peak-peak amplitude
 | ||||||
|  |    double volts = (peakToPeak * 5.0) / 1024;  // convert to volts
 | ||||||
|  | 
 | ||||||
|  |   if(volts>sensitivity){ | ||||||
|  |     if(c>10){ | ||||||
|  |       motorDown(); | ||||||
|  |       }else{   | ||||||
|  |       motorUp(); | ||||||
|  |         } | ||||||
|  |     c+=1; | ||||||
|  |      | ||||||
|  |     }else{ | ||||||
|  |     c=0; | ||||||
|  |     motorUp(); | ||||||
|  |       } | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | void motorUp(){ | ||||||
|  |     Serial.println("Safe"); | ||||||
|  |     digitalWrite(led,LOW); | ||||||
|  |     if(!isUp){ | ||||||
|  |     meservo.attach(2); | ||||||
|  |     meservo.write(40); | ||||||
|  |     isUp=true; | ||||||
|  |     delay(500); | ||||||
|  |     meservo.detach(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  | void motorDown(){ | ||||||
|  |     Serial.println("Drill in use"); | ||||||
|  |     digitalWrite(led,HIGH);   | ||||||
|  |   if(isUp){ | ||||||
|  |     meservo.attach(2); | ||||||
|  |     meservo.write(170); | ||||||
|  |     isUp=false; | ||||||
|  |     delay(500); | ||||||
|  |     meservo.detach(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |   } | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user