Introduction: Zijlader Met Hoogtebeveiliging

Houten heftruck (zijlader) + isomo loods.

Supplies

Benodigdheden: Hout, 12 spijkers (min. 2,5cm lang), isomo, 18 tandenstokers.


Instrumenten: Zaag, decoupeerzaag, cuttermes, hamer, boor met dunne kop (even dik als gebruikte spijker), ronde kop voor boor (diameter zelf te kiezen).

Step 1: Maken Van Grondvlak Heftruck

Benodigdheden: Decoupeerzaag


Zaag het grondvlak van de heftruck. gebruik hiervoor een decoupeerzaag. Zorg voor een rechthoekige vorm waarbij je aan de lange zijde een kleinere rechthoek uitzaagt.

Step 2: Maken Wielen Heftruck

Benodigdheden: zacht hout + boor met ronde kop + spijkers (4)


Zaag de wielen (4) uit zacht hout met een boor met ronde kop (diameter zelf te kiezen). Kies dan een houtstukje die je tussen de wielen wil plaatsen om ze met elkaar te verbinden. gebruik de hamer en de spijkers (1 spijker per wiel) om ze aan elkaar vast te maken.

Step 3: Vastmaken Wielen Aan Lichaam Heftruck

Benodigdheden: hamer + spijkers (4)


Gebruik wederom de hamer en spijkers (1 per wiel). Zet het lichaam op de wielen en klop de spijkers erin (eerst door het lichaam, dan door de wielen) herhaal dit voor alle 4 de wielen.

Step 4: Maken Staven Voor Vorken

Benodigdheden : hard hout + handzaag + spijkers (2)


Gebruik voor deze stap hard hout omdat het anders zal splijten. Zaag door middel van een handzaag de staven( breedte en lengte in zelf te bepalen). Om de vorken te kunnen verhogen/ verlagen boor je eerst 2 gaten voor ( de 1 boven de ander met een paar cm tussen), waarin de spijker van de vork in wordt gelegd. de hoogte van deze gaten mag je zelf bepalen.


Monteer deze staven zoals op de foto te zien aan de kant van het afgezaagde stuk van de heftruck. Doe dit doormiddel van 2 spijkers ( elke staaf 1) in de onderkant van het lichaam door de staven te slaan.

Step 5: Vorken Maken En Monteren Op Staven

Benodigdheden: handzaag + hard hout + spijkers (2)


Gebruik voor de vorken wederom hard hout om splijting te voorkomen. Zaag eerst de vorken met een handzaag. Zorg dat de lengte van de vorken overeenkomt met ongeveer 1/3 van de lengte van de staven. Boor bij elke vork een gat voor, zodat de spijker er gemakkelijk in en uit kan. Nu kan je je spijker in je staaf doen en kan je de vorken in de resteren lengte van de spijkers duwen.


De heftruck is klaar.

Step 6: Maken Grond Loods

Benodigdheden: cuttermes + isomo


Vind een groot stuk (plat) isomo en snij het in een rechthoek ( lengte en breedte zelf te bepalen, maar zorg dat het klopt in schaal met de heftruck, heftruck moet genoeg plaats hebben om door te kunnen rijden. Ongeveer 3 keer zo breed als heftruck moet goed zijn).

Step 7: Snijden In/uitgang Loods

Benodigdheden : isomo


Snij 2 pilaren uit isomo, de lengte en breedte valt zelf te bepalen maar zorg dat de hoogte niet veel hoger is dan de vorken van de heftruck (ongeveer 5cm hoger). Snij nu de ligger (liggende pilaar die steunt op de net gesneden pilaren) en zorg dat de lengte overeenkomt met de breedte van je grondplaat isomo. Snijdt nu 2 staven uit isomo die net iets langer zijn dan de breedte van je grondplaat.

Step 8: In Elkaar Zetten In/Uitgang Loods

Benodigdheden: 18 tandestokers + isomo


Zet je twee grondpilaren vast aan de uiteinden van de grondplaat isomo ( in de breedte) door telkens 2 tandenstoker in de grondplaat te prikken en dan de pilaren daar op te drukken. Zet ze dan nog steviger vast door aan elke hoek van beide grondpilaren een tandenstoker te zetten, deze tandenstokers zorgen ervoor dat het isomo moeilijker breekt.


Zet vervolgens je ligger vast aan je pilaar door hem ook vast te prikken aan de bovenkant van elke pilaar.


Als laatste zet je je dak vast door eerst elke balk aan elkaar vast te prikken (zoals te zien op de foto) met 2 tandenstokers en daarna de 2 balken vast te zetten aan de ligger met wederom 1 tandenstoker per balk

Step 9: Versier Hout Snijden En Klaarleggen

Benodigdheden: lange staven zacht hout, handzaag, 2 stroken zwart papier


Snij 4 lange staven hout met dezelfde lengte als de loods en leg die per 2 aan elke kant van de grondplaat ( zoals te zien op foto). Snij nu het hout in meerdere kleine stukken en leg die loodrecht op de lange stukken (zoals op foto te zien). Gebruik hiervoor een handzaag. Zorg ervoor dat er een strook zwart papier evenwijdig met de loodsingang voor en achter de ingang ligt. Dit zal noodzakelijk zijn om de gevarenzone aan te duiden.


Je loods is klaar, nu kunnen we beginnen aan het arduino gedeelte

Step 10: Ontwerpen Van Het Arduino-Circuit

Benodigdheden: 1 Arduino, kabels, breadboard, afstandssensor, infrarode kleursensor , 1-3 LEDs*, 1-3 weerstanden 220ohm*, batterij

https://store.arduino.cc/products/grove-infrared-reflective-sensor-v1-2

https://howtomechatronics.com/tutorials/arduino/ultrasonic-sensor-hc-sr04/

Verbind de arduino met de sensors zoals aangegeven op de foto

Rechts zie je de Infraroodsensor en in het midden de afstandssensor.


*De groene LED is niet noodzakelijk, deze licht op wanneer de heftruck zich in een veilige zone bevindt en wanneer de heftruck

*De Blauwe LED is niet noodzakelijk, deze licht op wanneer de infrarode sensor detecteert dat de heftruck de gevarenzone binnen/buiten rijdt








Step 11: Monteren Van Het Arduino Circuit Op De Heftruck

Zorg ervoor dat de afstandssensor op de vorken van de heftruck is gemonteerd en dat hij naar beneden gericht is zodat hij de afstand tot de grond meet. De infrarode sensor plaats je net onder de as van de voorste wielen, ook naar de grond gericht. Het breadboard en de arduino samen met de batterij kun je met dubbelzijdig plakband vastplakken of kan je los laten liggen op de heftruck.

Step 12: Schrijven Van De Code Voor De Arduino

De code werkt aan de hand van een state machine (https://en.wikipedia.org/wiki/Finite-state_machine)

Er zijn 4 verschillende toestanden:

Iedere keer dat de infrarode sensor een andere ondergrond detecteert zal de volgende toestand actief worden. Zo zal de infrarode sensor dus iedere keer als hij over een zwarte strook rijdt veranderen van toestand. Als de heftruck zich in de toestand "Binnen zone" bevindt, zal de afstandssensor meten. wanneer de waarde die de afstandssensor meet te groot is, zal de rode LED flikkeren om aan te geven dat het niet veilig is. (zie flowchart)


zie code hieronder:

// O&O State machine Final


const int KleurSensorPin = 8;
const int KleurWaardePin = 2;
const int TRIG_PIN = 12;
const int ECHO_PIN = 11;
const int AlarmPin = 3;
const int SafePin = 4;


float afstand;
float tijd;

int kleur;

// verschillende statussen definiëren
enum State {
Buiten_Zone_1,
Start_Zone_2,
Binnen_Zone_3,
Stop_Zone_4
};


// beginstatus vaststellen
State currentState = Buiten_Zone_1;


void setup() {
pinMode(KleurSensorPin, INPUT);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(KleurWaardePin, OUTPUT);
pinMode(AlarmPin, OUTPUT);


Serial.begin(9600);
}


void loop() {
// Check de status en voer de huidige status uit
switch (currentState) {
case Buiten_Zone_1: {
kleur = digitalRead(KleurSensorPin);
digitalWrite(KleurWaardePin, LOW);
digitalWrite(SafePin, HIGH);


// Veranderingsvoorwaarde 1 -> 2
if (kleur == 1) {
currentState = Start_Zone_2;
}
break;
}


case Start_Zone_2: {
kleur = digitalRead(KleurSensorPin);
digitalWrite(KleurWaardePin, HIGH);
digitalWrite(SafePin, LOW);


// Veranderingsvoorwaarde 2 -> 3
if (kleur == 0) {
currentState = Binnen_Zone_3;
}
break;
}


case Binnen_Zone_3: {
kleur = digitalRead(KleurSensorPin);
digitalWrite(KleurWaardePin, LOW);
digitalWrite(SafePin, LOW);


digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);


// Meet de duur van de echo-puls om de afstand te bepalen.
tijd = pulseIn(ECHO_PIN, HIGH);
afstand = (tijd * 0.0343) / 2;


// Geef de gemeten afstand weer op de seriële monitor.
Serial.print("Afstand: ");
Serial.println(afstand);


// Wacht kort voordat de volgende meting wordt uitgevoerd.
delay(100);


// Als de afstand groter is dan 17 dan gaat de alarmLED aan.
if(afstand > 17)
digitalWrite(AlarmPin, HIGH);
delay(300);
digitalWrite(AlarmPin, LOW);
delay(25);


// Veranderingsvoorwaarde 3 -> 4
if (kleur == 1) {
currentState = Stop_Zone_4;
}
break;
}


case Stop_Zone_4: {
kleur = digitalRead(KleurSensorPin);
digitalWrite(KleurWaardePin, HIGH);
digitalWrite(SafePin, LOW);


// Veranderingsvoorwaarde 4 -> 1
if (kleur == 0) {
currentState = Buiten_Zone_1;
}
break;
}
}
}


Proficiat! je hebt een zijlader beveiligt en grootse schade voorkomen aan de loods!