Är microprocessor overkill för ett larm?
- Greensilver
- Inlägg: 1305
- Blev medlem: 21 januari 2005, 21:24:57
- Ort: Sverige
- Kontakt:
Är microprocessor overkill för ett larm?
Jag tänkte försöka mig på att bygga ett billarm. Läs gärna mer om detta i projekttråden. Som det verkar nu har jag två val - antingen använda mig av vanliga "bilels"-komponenter som reläer, några dioder och kanske en och annan konding för att få grejorna att göra som jag vill. Det andra alternativet är att satsa på en programmerad microkrets.
Fördelen med det förstnämnda är att detta är saker jag "kan" en del om och har lekt med i flera år - nackdelen är att det är stelt, klumpigt och stenålder.
Om jag däremot skulle lyckas med en microprocessorstyrd larmbox finns det ju alla möjligheter i världen att bygga vidare på detta system och lägga till mer kul funktioner i takt med att jag lär mig. Tyvärr kan jag absolut ingenting om digitalteknik i nuläget. Jag funderar dock på att anmäla mig på en kurs i detta (studerar redan andra saker), dessutom har jag programmerat en del tidigare så vissa förutsättningar finns.
Följande saker måste min krets kunna göra:
Diverse timers, exempelvis köra centrallåsmotorerna X antal sekunder, fördröj aktiveringen av larmet 15 sekunder från det att bilen larmats, stänga av utlöst larm efter fem minuter osv.
Reagera på olika saker, exempelvis dörrkontakt som sluter mot jord.
Mina frågor då:
Verkar det overkill med en microprocessor för det jag vill skapa?
AVR eller PIC - vilket är bäst för min applikation?
Om jag beställer ett AVR Starterkit (ATSTK500) - klarar jag mig med ett sådant för att kunna experimentera fram ett program samt en krets som klarar av att göra det jag vill?
När jag väl skapat programmet - hur stora kunskaper i elektronik behöver jag för att få kretsen att styra några reläer på grundval av input i form av spänning på vissa trådar etc.?
Är det så enkelt att jag sätter ett stift "high" och låter detta dra ett relä, eller måste jag förstärka signalerna från microprocessorn med transistorer?
Tack på förhand för era svar!
(jag har läst i FAQ samt lufsat runt en del i övriga trådar men om mina frågor är alldeles för dumma ber jag om ursäkt!)
Fördelen med det förstnämnda är att detta är saker jag "kan" en del om och har lekt med i flera år - nackdelen är att det är stelt, klumpigt och stenålder.
Om jag däremot skulle lyckas med en microprocessorstyrd larmbox finns det ju alla möjligheter i världen att bygga vidare på detta system och lägga till mer kul funktioner i takt med att jag lär mig. Tyvärr kan jag absolut ingenting om digitalteknik i nuläget. Jag funderar dock på att anmäla mig på en kurs i detta (studerar redan andra saker), dessutom har jag programmerat en del tidigare så vissa förutsättningar finns.
Följande saker måste min krets kunna göra:
Diverse timers, exempelvis köra centrallåsmotorerna X antal sekunder, fördröj aktiveringen av larmet 15 sekunder från det att bilen larmats, stänga av utlöst larm efter fem minuter osv.
Reagera på olika saker, exempelvis dörrkontakt som sluter mot jord.
Mina frågor då:
Verkar det overkill med en microprocessor för det jag vill skapa?
AVR eller PIC - vilket är bäst för min applikation?
Om jag beställer ett AVR Starterkit (ATSTK500) - klarar jag mig med ett sådant för att kunna experimentera fram ett program samt en krets som klarar av att göra det jag vill?
När jag väl skapat programmet - hur stora kunskaper i elektronik behöver jag för att få kretsen att styra några reläer på grundval av input i form av spänning på vissa trådar etc.?
Är det så enkelt att jag sätter ett stift "high" och låter detta dra ett relä, eller måste jag förstärka signalerna från microprocessorn med transistorer?
Tack på förhand för era svar!
(jag har läst i FAQ samt lufsat runt en del i övriga trådar men om mina frågor är alldeles för dumma ber jag om ursäkt!)
Senast redigerad av Greensilver 22 januari 2005, 02:12:58, redigerad totalt 1 gång.
Nej jag tycker inte det är overkill att ha en enchipsdator!
AVR vs PIC, det är som att diskutera Intel vs AMD
Till AVR finns en gratis c-kompilator som jag tycker är bra, så jag skulle valt en AVR.
Ett starterkit räcker bra när det gäller att programmera, sedan kan du koppla sladdar från det till en kopplingsplatta för att styra reläer osv.
Det räcker att veta hur man kopplar in en enkel transistor och via den styra reläet, kanske går det till och med att styra ett relä direkt från enchipsdatorns utgångar, det får man kolla upp i databladen.
/Johan
AVR vs PIC, det är som att diskutera Intel vs AMD

Ett starterkit räcker bra när det gäller att programmera, sedan kan du koppla sladdar från det till en kopplingsplatta för att styra reläer osv.
Det räcker att veta hur man kopplar in en enkel transistor och via den styra reläet, kanske går det till och med att styra ett relä direkt från enchipsdatorns utgångar, det får man kolla upp i databladen.
/Johan
En mikrokontroller behövs absolut för ett billarm, för att göra det lätt med tidsfördröjningar och öka flexibiliteten multipelt jämfört med om du skulle byggt upp det med separata kretsar för varje funktion.
Även de billigaste gokända billarmen innehåller mikrokontrollers. Jag hittade faktist en PIC i mitt eget larm
Även de billigaste gokända billarmen innehåller mikrokontrollers. Jag hittade faktist en PIC i mitt eget larm

Att ta en "universell" komponent som en MCU till at ta hand om larmet är en mycket bra ide, speciellt om du kan tänkas bygga på funktioner i ett senare läge. Så en processor = Bra idé!
PIC, AVR eller Freescale....... Jag hade tagit Freescale! (a.k.a. Motorola)
Gratis C++ compiler (CodeWarrier), billig MCU(!), FLASH omprogrammernar, en jävlar massa olika modeller, lågt strömförbruk.
http://www.freescale.com
Nu för tiden är det oftast inte frågan om vad processorn kan men hur bra programmeringsverktyget är.
PIC är gratis på assemblern bara, kan förvisso simulera bra osv men är krånglig med externa input under simulering, kretsarna är lite väl dyra för de funktioner/MIPS man får.
AVR har jag hållit mig borte ifrån, andra vet bättre vad de går för.
Freescale (H8-processorer) verkar vara tunga, dom är billiga, bra support, strömsnåla osv.
Bara på grund av den gratis C++ compiler är deras värde högre och att styckpriset dessutom är ca: 50% av PIC (beroende på storlek såklart) är de klart intressanta.
Freescale processorn kräver förvisso licens (=betalning) vid kod över 16K men det är ju ett minimalt problem, gör man så tunga grejor kan man nog betala den.
PIC, AVR eller Freescale....... Jag hade tagit Freescale! (a.k.a. Motorola)
Gratis C++ compiler (CodeWarrier), billig MCU(!), FLASH omprogrammernar, en jävlar massa olika modeller, lågt strömförbruk.
http://www.freescale.com
Nu för tiden är det oftast inte frågan om vad processorn kan men hur bra programmeringsverktyget är.
PIC är gratis på assemblern bara, kan förvisso simulera bra osv men är krånglig med externa input under simulering, kretsarna är lite väl dyra för de funktioner/MIPS man får.
AVR har jag hållit mig borte ifrån, andra vet bättre vad de går för.
Freescale (H8-processorer) verkar vara tunga, dom är billiga, bra support, strömsnåla osv.
Bara på grund av den gratis C++ compiler är deras värde högre och att styckpriset dessutom är ca: 50% av PIC (beroende på storlek såklart) är de klart intressanta.
Freescale processorn kräver förvisso licens (=betalning) vid kod över 16K men det är ju ett minimalt problem, gör man så tunga grejor kan man nog betala den.
- Greensilver
- Inlägg: 1305
- Blev medlem: 21 januari 2005, 21:24:57
- Ort: Sverige
- Kontakt:
Nu har jag läst en del om såväl PIC som AVR och jag hittade en fördel med PIC (som jag förstod) - resten var närmast grekiska för mig!
PIC'en kan tydligen leverera tillräckligt med ström för att tända en lysdiod direkt på utgångarna - detta skulle inte AVR klara av enligt vad jag lyckades läsa mig till.
Jag har räknat ut att jag behöver absolut minst fem ingångar och fem utgångar för att kunna göra det jag vill.
Vilka PIC respektive AVR kretsar klarar detta?
Tänkte att jag kunde läsa om dom på Elfas hemsida och se vilken jag fastnar för...
Jo, en sak till - det är en fördel om det finns bra BASIC möjligheter - jag har varit en riktig klippare på BASIC. Började med C64 och har sedan lekt med detta via Atari (GFA, STOS, 1ST BASIC mfl.) och sist men inte minst QB och VB på PC... C har jag inte grejat särskilt mycket med alls... Å andra sidan lär man sig väl rätt fort när man redan kan ett annat programspråk...
Så, vad tror ni experter - vad skall jag satsa på?

PIC'en kan tydligen leverera tillräckligt med ström för att tända en lysdiod direkt på utgångarna - detta skulle inte AVR klara av enligt vad jag lyckades läsa mig till.
Jag har räknat ut att jag behöver absolut minst fem ingångar och fem utgångar för att kunna göra det jag vill.
Vilka PIC respektive AVR kretsar klarar detta?
Tänkte att jag kunde läsa om dom på Elfas hemsida och se vilken jag fastnar för...
Jo, en sak till - det är en fördel om det finns bra BASIC möjligheter - jag har varit en riktig klippare på BASIC. Började med C64 och har sedan lekt med detta via Atari (GFA, STOS, 1ST BASIC mfl.) och sist men inte minst QB och VB på PC... C har jag inte grejat särskilt mycket med alls... Å andra sidan lär man sig väl rätt fort när man redan kan ett annat programspråk...
Så, vad tror ni experter - vad skall jag satsa på?
-
- Inlägg: 2360
- Blev medlem: 16 september 2003, 17:18:13
- Ort: Dubai, United Arab Emirates
- Kontakt:
Du har nog läst lite fel angående AVR'ens möjlighet till att driva lysdioder på utgångarna. En AVR kan leverera 20 mA vid 4.5 volt på en utgång. Och det räcker långt för vilken lysdiod som helst.
Dock så ska du ha ett motstånd i serie med lysdioden, men det måste du ha även för för PIC eller vilken annan uC som helst.
Dock så ska du ha ett motstånd i serie med lysdioden, men det måste du ha även för för PIC eller vilken annan uC som helst.
- Schnegelwerfer
- Inlägg: 1863
- Blev medlem: 8 november 2004, 13:46:56
Hmm.. jag tycker att det låter som om en PIC med PICBASIC vore någonting för dig att börja med.
Angående utström från portar o.s.v. så spelar det egenligen mindre roll. Om du ska driva relän odyl. så måste du nog hursomhelst ha transistorer på utgångarna.
Portantalet finns det både PICar och AVRer som fixar. PIC16F628 har exempelvis 16 portar som kan användas som in- eller utgångar.
Angående utström från portar o.s.v. så spelar det egenligen mindre roll. Om du ska driva relän odyl. så måste du nog hursomhelst ha transistorer på utgångarna.
Portantalet finns det både PICar och AVRer som fixar. PIC16F628 har exempelvis 16 portar som kan användas som in- eller utgångar.
- Greensilver
- Inlägg: 1305
- Blev medlem: 21 januari 2005, 21:24:57
- Ort: Sverige
- Kontakt:
-
- Inlägg: 2360
- Blev medlem: 16 september 2003, 17:18:13
- Ort: Dubai, United Arab Emirates
- Kontakt:
För att inte få riktiga dunderklumpar till utskrivna manualer så brukar jag printa dom dubbelsidiga med 4 krypta sidor på varje sida. På så sätt får jag rum med den 170 sidiga manualen på nätta 22 papper.
Med en 1200 dpi laser så är det tillräckligt skarpt för att kunna med lätthet läsa texten iallfall.
Med en 1200 dpi laser så är det tillräckligt skarpt för att kunna med lätthet läsa texten iallfall.
Kolla in:Greensilver skrev:Jo, en sak till - det är en fördel om det finns bra BASIC möjligheter - jag har varit en riktig klippare på BASIC. Började med C64 och har sedan lekt med detta via Atari (GFA, STOS, 1ST BASIC mfl.) och sist men inte minst QB och VB på PC... C har jag inte grejat särskilt mycket med alls... Å andra sidan lär man sig väl rätt fort när man redan kan ett annat programspråk...
http://www.mikroelektronika.co.yu/engli ... pilers.htm
Tror att mikroBasic kommer att passar dig!
Testversionen har en spärr på 2k på färdig MCU kod, själv kör jag
mikroPascal i testversion oah har inte kommit upp till 2k gränsen ännu.
Senast redigerad av lgrfbs 13 februari 2005, 23:14:25, redigerad totalt 1 gång.
Jag har inte hittat något som PIC är bättre på, jämfört med AVR. Visserligen är det inga större saker som skiljer dom åt, men har du inte redan börjat med PIC så tycker jag att du ska välja AVR. AVR:er är 4 gånger snabbare än PIC:ar vid samma externa klockfrekvens, är mer prisvärda (med avseende på hastighet, antalet funktioner och minne) och är konstruerade för att klara program skrivna i högnivåspråk effektivt.
Ladda hem en demo-version av Bascom AVR BASIC (demoversionen klarar program på max 2 kB) och se om du känner igen dig från VB. Fast jag vet inte vilka AVR:er som Bascom stöder. Men det framgår säkert i programmet.
Med STK500 får du med en eller två(?) AVR:er, så att du kan börja labba direkt.
Ladda hem en demo-version av Bascom AVR BASIC (demoversionen klarar program på max 2 kB) och se om du känner igen dig från VB. Fast jag vet inte vilka AVR:er som Bascom stöder. Men det framgår säkert i programmet.
Med STK500 får du med en eller två(?) AVR:er, så att du kan börja labba direkt.
- Greensilver
- Inlägg: 1305
- Blev medlem: 21 januari 2005, 21:24:57
- Ort: Sverige
- Kontakt:
Tack så jättemycket för tipsen! Skall läsa om de båda på en gång!
Man blir lite av en vindflöjel när man inte har några egna kusnkaper om saker och ting. Jag fastnar alltid för det system som någon berättat om senast.
Blir till att läsa lite ikväll så får vi se - jag vet hur det är när man vaknar upp och märker att man valt "fel" prylar. Jag klamrade mig fast vid Atari långt in på PC tiden och ångrar bittert att jag inte lärde mig C redan i fjortisåldern. På den tiden hade man ju tid att sitta dygnet runt - men eftersom jag höll mig till basic så sprang man liksom in i en övre gräns för vad som gick att göra efter ett tag. Det var en av anledningarna att jag slutade programmera och började skruva bilar istället!
Man blir lite av en vindflöjel när man inte har några egna kusnkaper om saker och ting. Jag fastnar alltid för det system som någon berättat om senast.

Blir till att läsa lite ikväll så får vi se - jag vet hur det är när man vaknar upp och märker att man valt "fel" prylar. Jag klamrade mig fast vid Atari långt in på PC tiden och ångrar bittert att jag inte lärde mig C redan i fjortisåldern. På den tiden hade man ju tid att sitta dygnet runt - men eftersom jag höll mig till basic så sprang man liksom in i en övre gräns för vad som gick att göra efter ett tag. Det var en av anledningarna att jag slutade programmera och började skruva bilar istället!
