top of page
אור בתנועה
בכדי לייצר את הפרויקט הסופי שלנו השתמשנו בעזרים שלמדנו במהלך השנה
תחילה, שרטטנו מסמך בתוכנת מידול ריינו וייצאנו קוד שמתאים למכונת הסי אנד סי
כרסמנו בעץ בעזרת המכונה שפעלה בעזרת קוד שהפקנו מהגרסופר בתוכנת הריינו
לשם כך השתמשנו בעץ סנדביץ אשר התאים לכרסום בצורה המירבית
לאחר שכרסמנו צד אחד של משושים, יצקנו חומר אפוקסי עם מהול בצבע כחול מכיוון שזהו חומר שקל לחדור דרכו אור
אחרי שהחומר התייבש, כרסמנו מהצד השני של פלטת העץ, מקום לשים את לד התאורה וכל האלקטרוניקה
המטרה בשימוש האלקטרוני הייתה לייצר משטח\אריח שיכול להידלק ולהפיץ אור על ידי זיהוי קירבה למשטח
לשם כך, השתמשנו בערכות הארדואינו שקיימות במחלקה ובסנסור אולטרסוניק ונורות לדים אשר קנינו
האתגר העיקרי בפיצוח של החיבורים האלקטרוניים היה ההבנה כיצד ניתן לחבר פס לד שצורך עוצמה של 12 וולט ללוח ארדואינו שיכול לספק עד 5 וולט
בכדי להצליח לבצע את החיבורים הנדרשים ובכדי שיהיה חיבור בין הסנסור שמחובר ללוח ארדואינו לבין הלוח ולבין פס
הלדים, השתמשנו בספק כוח חיצוני אשר יספק את עוצמת הכוח הנדרשת לפס הלד להידלק
לאחר שהצלחנו לחבר את הלד אל לוח הארדואינו ולהפעילו בעזרת ספק הכוח, נתקלנו בבעיה נוספת שאין חיבור בין ספק הכוח לסנסור האמור להפעיל את הלד על ידי קירבה אליו
בשביל לחבר בין כלל הגורמים השתמשנו במתג (טרנזיסטור) וכך הצלחנו להפעיל על ידי קוד בארדואינו את הלד שיפעל בעזרת תחושת הקירבה לסנסור


קובץ ריינו לייצוא למכשיר cnc


ניסיונות כרסום במכשיר סי אנד סי
ניסיון של הקוד ארדואינו עם לד רגיל מהערכה

ניסיון הפעלה של הלד עם חיבור לספק כוח חיצוני אך ללא הצלחה לחבר לסנסור. הלד פועל תמיד בגלל ספק הכוח ולא בגלל הארדואינו
ניסיון מוצלח עם לד אחד שעובד על ידי הסנסור בעזרת ספק כוח חיצוני ומתג

החיבורים האלקטרוניים
//Sensor Trig
const int trigpin1 =5;
const int trigpin2 =9;
const int trigpin3 =3;
const int trigpin4 =7;
//Sensor Echo
const int echopin1 =4;
const int echopin2 =8;
const int echopin3 =2;
const int echopin4 =6;
//Led Control
const int ledpin1=10;
const int ledpin2=11;
const int ledpin3=12;
const int ledpin4=13;
long duration1;
int distance1;
int safetyDistance1;
long duration2;
int distance2;
int safetyDistance2;
long duration3;
int distance3;
int safetyDistance3;
long duration4;
int distance4;
int safetyDistance4;
void setup() {
pinMode(trigpin1, OUTPUT);
pinMode(echopin1, INPUT);
pinMode(ledpin1, OUTPUT);
pinMode(trigpin2, OUTPUT);
pinMode(echopin2, INPUT);
pinMode(ledpin2, OUTPUT);
pinMode(trigpin3, OUTPUT);
pinMode(echopin3, INPUT);
pinMode(ledpin3, OUTPUT);
pinMode(trigpin4, OUTPUT);
pinMode(echopin4, INPUT);
pinMode(ledpin4, OUTPUT);
Serial.begin(9600);
}
void loop(){
//*****************************
// Serial.print("\ndistance1: ");
// Serial.print(distance1);
// Serial.print("\ndistance2: ");
// Serial.print(distance2);
// Serial.print("\ndistance3: ");
// Serial.print(distance3);
long duration, inches, cm;
Serial.println("START");
//sensor 3
digitalWrite(trigpin1, LOW);
delayMicroseconds(2);
digitalWrite(trigpin1, HIGH);
delayMicroseconds(10);
digitalWrite(trigpin1, LOW);
duration1 = pulseIn(echopin1, HIGH);
distance1 = duration1*0.034/2;
Serial.print(distance1);
Serial.println();
//sensor 1
digitalWrite(trigpin2, LOW);
delayMicroseconds(2);
digitalWrite(trigpin2, HIGH);
delayMicroseconds(10);
digitalWrite(trigpin2, LOW);
duration2 = pulseIn(echopin2, HIGH);
distance2 = duration2*0.034/2;
Serial.print(distance2);
Serial.println();
//sensor 4
digitalWrite(trigpin3, LOW);
delayMicroseconds(2);
digitalWrite(trigpin3, HIGH);
delayMicroseconds(10);
digitalWrite(trigpin3, LOW);
duration3 = pulseIn(echopin3, HIGH);
distance3 = duration3*0.034/2;
Serial.print(distance3);
Serial.println();
//sensor 2
digitalWrite(trigpin4, LOW);
delayMicroseconds(2);
digitalWrite(trigpin4, HIGH);
delayMicroseconds(10);
digitalWrite(trigpin4, LOW);
duration4 = pulseIn(echopin4, HIGH);
distance4 = duration4*0.034/2;
Serial.print(distance4);
Serial.println();
if(distance1>10){
digitalWrite(ledpin1, HIGH);
}
else{
digitalWrite(ledpin1, LOW);
}
if(distance2>10){
digitalWrite(ledpin2, HIGH);
}
else{
digitalWrite(ledpin2, LOW);
}
if(distance3>10){
digitalWrite(ledpin3, HIGH);
}
else{
digitalWrite(ledpin3, LOW);
}if(distance4>10){
digitalWrite(ledpin4, HIGH);
}
else{
digitalWrite(ledpin4, LOW);
}
// Serial.print("\duration4: ");
// Serial.print(duration4);
// Serial.print("\ndistance4: ");
// Serial.print(distance4);
delay(50);
//****************
// delay(1000);
// digitalWrite(ledpin1, HIGH);
// digitalWrite(ledpin2, HIGH);
// digitalWrite(ledpin3, HIGH);
// digitalWrite(ledpin4, HIGH);
// delay(1000);
// digitalWrite(ledpin1, LOW);
// digitalWrite(ledpin2, LOW);
// digitalWrite(ledpin3, LOW);
// digitalWrite(ledpin4, LOW);
// digitalWrite(trigpin1, LOW);
// digitalWrite(trigpin2, LOW);
// digitalWrite(trigpin3, LOW);
// digitalWrite(trigpin4, LOW);
// delayMicroseconds(2);
// digitalWrite(trigpin1, HIGH);
// digitalWrite(trigpin2, HIGH);
// digitalWrite(trigpin3, HIGH);
// digitalWrite(trigpin4, HIGH);
// delayMicroseconds(10);
// digitalWrite(trigpin1, LOW);
// digitalWrite(trigpin2, LOW);
// digitalWrite(trigpin3, LOW);
// digitalWrite(trigpin4, LOW);
// duration1 = pulseIn(echopin1, HIGH);
// distance1 = duration1*0.034/2;
// safetyDistance1 = distance1;
// duration2 = pulseIn(echopin2, HIGH);
// distance2 = duration2*0.034/2;
// safetyDistance2 = distance2;
// duration3 = pulseIn(echopin3, HIGH);
// distance3 = duration3*0.034/2;
// safetyDistance3 = distance3;
// duration4 = pulseIn(echopin4, HIGH);
// distance4 = duration4*0.034/2;
// safetyDistance4 = distance4;
// if (safetyDistance1<= 5){
// digitalWrite(ledpin1, LOW);
// Serial.print("distance1: ");
// Serial.print(distance1);
// }
// else{
// digitalWrite(ledpin1, HIGH);
// Serial.print("distance1: ");
// Serial.print(distance1);
// }
// Serial.print("distance1: ");
// Serial.print(distance1);
// if (safetyDistance2<= 5){
// digitalWrite(ledpin2, LOW);
// Serial.print("distance2: ");
// Serial.print(distance2);
// }
// else{
// digitalWrite(ledpin2, HIGH);
// Serial.print("distance2: ");
// Serial.print(distance2);
// }
// Serial.print("distance2: ");
// Serial.print(distance2);
// if (safetyDistance3<= 5){
// digitalWrite(ledpin3, LOW);
// Serial.print("distance3: ");
// Serial.print(distance3);
// }
// else{
// digitalWrite(ledpin3, HIGH);
// Serial.print("distance3: ");
// Serial.print(distance3);
// }
// Serial.print("distance3: ");
// Serial.print(distance3);
// if (safetyDistance4<= 5){
// digitalWrite(ledpin4, LOW);
// Serial.print("distance4: ");
// Serial.print(distance4);
// }
// else{
// digitalWrite(ledpin4, HIGH);
// Serial.print("distance4: ");
// Serial.print(distance4);
// }
// Serial.print("distance4: ");
// Serial.print(distance4);
}
הקוד בתוכנת הארדואינו להפעלת המערכת האלקטרונית
bottom of page