Hoe uw auto-ontstekingssysteem te bedienen via seriële communicatie?

Er zijn verschillende SmartStart-systemen op de markt die het ontstekingssysteem van uw auto automatiseren, zoals Viper SmartStart maar ze zijn erg duur. Hoewel ze starten op afstand, stopzetten en locatietracering, enz. Omvatten, vereisen ze daarom veel wijzigingen in het originele circuit van de auto. Het aanbrengen van wijzigingen in de circuity kan gevaarlijk zijn omdat dit tot kortsluiting kan leiden en ook deze aftermarket-systemen zijn duur. Vandaag zal ik een systeem ontwerpen dat het Bluetooth-transmissieconcept volgt om de motor te starten en waarmee de eigenaar van de auto ook een wachtwoord kan instellen om de auto tegen dieven te beschermen. Als iemand de auto probeert te stelen, kan hij dit vanwege wachtwoordbeveiliging niet doen. Zodra het verkeerde wachtwoord wordt ingevoerd met het toetsenbord, wordt de contactschakelaar niet ingeschakeld. Het boorddiagnosebord dat verantwoordelijk is voor het aansturen van alle functies van de auto, kan niet worden gereset wanneer we ons circuit in de auto installeren. Laten we nu, zonder een seconde te verspillen, aan het werk gaan.

Hoe een anti-diefstal ontstekingscircuit te ontwerpen?

Nu we de samenvatting van het project kennen, laten we verder gaan en verschillende informatie verzamelen om aan het werk te gaan. We zullen eerst een lijst maken van de componenten en vervolgens alle componenten samenvoegen om een ​​werkend systeem te maken.

Stap 1: Benodigde componenten (hardware)

Stap 2: Benodigde componenten (software)

Stap 3: Blokschema

In dit project heb ik twee blokschema's ontworpen om het doel van het project duidelijk uit te werken. De eerste toont het traditionele ontstekingssysteem dat het meest wordt gebruikt in alle auto's die tegenwoordig worden geassembleerd. De tweede toont ons ontstekingssysteem dat ik in dit project heb ontworpen en dat in de auto's kan worden geïnstalleerd om ze veiliger te maken.

  1. Traditioneel ontstekingssysteem:
  2. Gewijzigd ontstekingssysteem:

Stap 4: Werkingsprincipe

In ons ontstekingssysteem worden de draden niet aangestuurd door de boorddiagnosepoort, maar werken ze autonoom. Er zijn verschillende elektronische gadgets op de markt die de mogelijkheid hebben om de OBD-poort en de computers die in de motoren aanwezig zijn te resetten. De elektronisch circuit heeft twee porties. De ene wordt aan de contactschakelaarzijde gemonteerd en de tweede aan de motorzijde. Tussen deze twee kanten vindt draadloze overdracht van de Bluetooth-signalen plaats. Het primaire circuit bestaat uit een contactschakelaar, Arduino, LCD, toetsenbord en HC-06. De secundaire kant van het circuit zal bestaan ​​uit een Arduino, relaismodule, HC-06 en zoemer. Zodra de sleutel wordt bewogen om de auto te starten, wordt het LCD-scherm gedraaid AANen stelt de bestuurder in staat het wachtwoord in te voeren dat door hem / haar in eerste instantie is ingesteld in het Code. Als de bestuurder alleen het juiste wachtwoord invoert, wordt het signaal aan de motorzijde ontvangen door de Bluetooth-module en wordt de sleutel verder bewogen waardoor het relaiscircuit wordt geactiveerd en de ventilator wordt ingeschakeld. Nu, om de auto te starten, moeten we de sleutel naar de contactstand bewegen, zodat de auto kan worden gestart. Zodra de auto wordt gestart, wordt het systeem weergegeven AANop het LCD-scherm en zodra de sleutel in de achteruit wordt gedraaid, wordt de auto gedraaid UIT maar de draadloze verbinding blijft bestaan ​​totdat de sleutel niet volledig naar achteren wordt bewogen. Als er meerdere verkeerde pogingen worden gedaan om de auto te starten, wordt het alarm gegenereerd met behulp van de zoemer die de voorbijgangers of de eigenaar van de auto waarschuwt als hij / zij niet ver van de auto verwijderd is.

Stap 5: simuleer het circuit

Voordat u het circuit maakt, is het beter om alle verbindingen op software te simuleren en te onderzoeken. De software die we gaan gebruiken is de Proteus Design Suite. Proteus is een software waarop elektronische schakelingen worden gesimuleerd.

  1. Nadat u de Proteus-software heeft gedownload en geïnstalleerd, opent u deze. Open een nieuw schema door op het ISISpictogram op het menu.
  2. Wanneer het nieuwe schema verschijnt, klikt u op het P.pictogram in het zijmenu. Hierdoor wordt een venster geopend waarin u alle componenten kunt selecteren die zullen worden gebruikt.
  3. Typ nu de naam van de componenten die zullen worden gebruikt om het circuit te maken. De component verschijnt aan de rechterkant in een lijst.
  4. Zoek op dezelfde manier als hierboven in alle componenten zoals hierboven. Ze verschijnen in de Apparaten Lijst.

Stap 6: Circuitdiagrammen

  1. Primaire zijde:
  2. Secundaire zijde:

Stap 7: Aan de slag met Arduino

Als u nog niet eerder aan Arduino IDE hebt gewerkt, hoeft u zich geen zorgen te maken, want hieronder wordt stap voor stap weergegeven hoe u de Arduino IDE instelt.

  1. Download de nieuwste versie van Arduino IDE van Arduino.
  2. Verbind je Arduino-bord met de pc en open het Configuratiescherm. Klik op Hardware en geluid.Nu open Apparaten en printer en zoek de poort waarop uw bord is aangesloten. In mijn geval wel COM14maar het is anders op verschillende computers.
  3. Klik op het menu Tool en stel het bord in als Arduino Nano (AT Mega 328P).
  4. Stel in hetzelfde Tool-menu de Processor in als ATmega328p (oude bootloader).
  5. We zullen een bibliotheek moeten toevoegen om de LCD-module te gebruiken. De bibliotheek is hieronder in de downloadlink bijgevoegd, samen met de code. Ga naar Schets> Bibliotheek opnemen> .ZIP-bibliotheek toevoegen.
  6. Download de onderstaande code en plak deze in uw Arduino IDE. Klik op de uploaden knop om de code op uw microcontroller te branden.

Download de code en benodigde bibliotheken door hier te klikken.

Stap 8: Code

De code voor dit project is vrij eenvoudig en goed becommentarieerd.

  1. leegte setup ()is een functie waarin we de INPUT- of OUTPUT-pinnen initialiseren. Deze functie stelt ook de baudrate in met Serial.begin () opdracht. Baudrate is de communicatiesnelheid van de Arduino.
  2. leegte lus ()is een functie die herhaaldelijk in een lus wordt uitgevoerd. In deze lus schrijven we een code die de microcontroller-kaart vertelt welke taken moeten worden uitgevoerd en hoe.
#inclusief  #inclusief   // Noodzakelijke bibliotheek voor LCD-module #include          // Noodzakelijke bibliotheek voor 4x4 toetsenbord int ontsteking = 5; // Pin 5 gebruikt voor triggerrelais int alarm = 6; // Pin 6 gebruikt voor het activeren van de zoemer int pos = 0; LiquidCrystal lcd (2,3,4,9,10,11,12); Wachtwoord wachtwoord = Wachtwoord ("4321"); // Geef dit wachtwoord door aan het stuurprogramma const byte ROWS = 4; // Vier rijen const byte COLS = 3; // Drie kolommen // Definieer de Keymap-tekensleutels [ROWS] [COLS] = {{'1', '2', '3',}, {'4', '5', '6',}, { '7','8','9',}, {'*','0',' ',} }; // Verbind toetsenbord ROW0, ROW1, ROW2 en ROW3 met deze Arduino-pinnen. byte rowPins [ROWS] = {25, 24, 23, 22}; // maak verbinding met de rij pinouts van het toetsenbord byte colPins [COLS] = {28, 27, 26}; // maak verbinding met de kolom pinouts van het toetsenbord const int buttonPin = 7; int knopState = 0; // Maak het Keypad Keypad keypad = Keypad (makeKeymap (toetsen), rowPins, colPins, ROWS, COLS); void setup () {pinMode (buttonPin, INPUT); lcd.begin (16, 2); digitalWrite (ledPin, LAAG); // zet de LED op Serial.begin (9600); keypad.addEventListener(keypadEvent); // voeg een event listener toe voor dit keypad keypad.setDebounceTime (250); } void loop () {keypad.getKey (); buttonState = digitalRead (buttonPin); if (buttonState == HIGH) {lcd.clear (); } keypadEvent (); } void keypadEvent (KeypadEvent eKey) {schakelaar (keypad.getState ()) {case PRESSED: lcd.print (eKey); switch (eKey){ case ' ': guessPassword(); digitalWrite (ontsteking, HIGH); digitalWrite (alarm, HIGH); breken; standaard: wachtwoord.append(eKey); }}} void guessPassword () {if (password.evaluate ()) {digitalWrite (ledPin, HIGH); vertraging (500); lcd.print ("GELDIG WACHTWOORD"); // wachtwoord reset(); // reset wachtwoord na correcte inloopvertraging (600); lcd.print("AAN"); vertraging (2000); lcd.clear (); } else {digitalWrite (ledPin, LOW); lcd.print ("ONGELDIG WACHTWOORD"); wachtwoord reset(); // stelt wachtwoord opnieuw in na ONJUISTE binnenkomstvertraging (600); lcd.clear (); }}

Stap 7: Hardware-ontwerp

Omdat we nu het circuit op software hebben gesimuleerd en de code hebben begrepen, laten we nu verder gaan en de componenten op het breadboard plaatsen. Ten eerste zullen we het primaire zijcircuit assembleren en daarna zullen we het secundaire zijcircuit assembleren.

Het is beter om het circuit te verbinden met het audiosysteem van de auto zodat het voor de inbrekers moeilijk wordt om dat circuit te vinden en ze meer tijd nodig hebben om achter het dashboard van de auto te reiken omdat het erachter komt te staan. Het audiosysteem van de auto wordt aangesloten op de schakelaar en verder om de gelijkstroomaccu aan te zetten AAN het audiosysteem. Wanneer de gebruiker het juiste wachtwoord invoert met behulp van het 4 × 4-toetsenbord, wordt de draadloze verbinding tussen beide zijden tot stand gebracht en moet hij / zij de sleutel opnieuw draaien om de auto te starten. Monteer alle aansluitingen op het breadboard en plak met dubbele tape het circuit achter het audiosysteem van de auto.

Nu gaan we de secundaire zijde van het circuit in elkaar zetten, ook wel de motorzijde genoemd. Aan deze kant zullen we de relaismodule verbinden met de Arduino en deze wordt alleen geactiveerd als hij een signaal ontvangt van de Bluetooth-module. Als de bestuurder bij meerdere pogingen het verkeerde wachtwoord invoert, gaat het alarm af en zullen voorbijgangers weten dat er een probleem is in de auto. Plaats de componenten op het breadboard volgens het hierboven getoonde schakelschema en sluit het circuit aan op de radiatorwaterfles.

Aanbevelingen

  1. Breng koellichamen aan op de componenten die aan de motorzijde zijn geplaatst, zodat bij opwarming van de auto kortsluiting kan worden voorkomen.
  2. De GPS- en GSM-modules kunnen aan het circuit worden toegevoegd om de locatie van de auto te bepalen en de veiligheid te garanderen door de motor uit te schakelen via sms.
  3. Gezichtsherkenning kan ook in dit systeem worden geïmplementeerd, zodat zodra het gezicht van de eigenaar wordt herkend, de auto wordt ingeschakeld.
Facebook Twitter Google Plus Pinterest