koppla sensor av typ "npn sinking" till basic stam
koppla sensor av typ "npn sinking" till basic stam
Hej!
Här kommer en fråga från en riktig nybörjare på elektronik.
Jag skulle vilja koppla en flödessensor till min basic stamp 2 (för att mäta bränsleförbrukning i båten).
Problemet är att sensorn är av typen "open collector NPN sinking" med anslutningar för signal, jord och +Vcc). Som jag har förstått detta så innebär det att signalen (en puls per 0,1ml vätska som rinner genom sensorn) kommer i form av att sensorn öppnar för ström UT från mottagarens I/O pin IN till sensorns pin för signal. I alla andra exempel på tillämpningar med sensorer som kopplas till Basic Stamp som jag sett så läser man av om ström ligger på IN mot Stampens I/O pin eller inte.
Som jag förstått det så känner Stampen av om spänningen IN mot I/O pin ligger över (1) eller under (0) 1,4V. I fallet med min sensor kommer väl spänningen mot I/O pin ligga på tex. 0v (ingen signal = ingen ström in i sensorn) eller -5v (puls = ström flyter från Stampen in i sensorn). Är jag helt ute och cyklar här?
Om jag har rätt undrar jag om Stampen kan känna av spänningar in mot I/O pins eller om jag på nåt sätt måste göra en alternativkoppling för att få spänning att ligga på in mot en I/O pin för att indikera signalen från sensorn.
Här kommer en fråga från en riktig nybörjare på elektronik.
Jag skulle vilja koppla en flödessensor till min basic stamp 2 (för att mäta bränsleförbrukning i båten).
Problemet är att sensorn är av typen "open collector NPN sinking" med anslutningar för signal, jord och +Vcc). Som jag har förstått detta så innebär det att signalen (en puls per 0,1ml vätska som rinner genom sensorn) kommer i form av att sensorn öppnar för ström UT från mottagarens I/O pin IN till sensorns pin för signal. I alla andra exempel på tillämpningar med sensorer som kopplas till Basic Stamp som jag sett så läser man av om ström ligger på IN mot Stampens I/O pin eller inte.
Som jag förstått det så känner Stampen av om spänningen IN mot I/O pin ligger över (1) eller under (0) 1,4V. I fallet med min sensor kommer väl spänningen mot I/O pin ligga på tex. 0v (ingen signal = ingen ström in i sensorn) eller -5v (puls = ström flyter från Stampen in i sensorn). Är jag helt ute och cyklar här?
Om jag har rätt undrar jag om Stampen kan känna av spänningar in mot I/O pins eller om jag på nåt sätt måste göra en alternativkoppling för att få spänning att ligga på in mot en I/O pin för att indikera signalen från sensorn.
Angående det elektriska så innebär "open collector" att utgången kan bara driva ledningen till låg nivå. Dvs om inte interna pullupresistorer finnes så måste man sätta ett på ledningen till BS2. Pullup är ett enkelt motstånd på tex 10 kΩ som är kopplat till +(Vcc). Någon annan får fylla i jag kan ha blandat samman saker.
Du har ju en del kommandon som "räknar" pulser typ PULSIN,COUNT eller vad de nu heter. Dock får du nog se till att "tömma" variabeln med jämna mellanrum så den inte flödar över.
Ett problem som jag ser med BS2 är att du inte har interupt (ungefär som multitasking) och hur du än gör riskerar du att missa pulser, en av många anledningar att inte använda BS2. Detta innebär att du NOGA måste avväga kodraderna som används om du vill ha korrekta värden efter ett tag eller se till att ha koll på "vad som skulle ha förbrukats medans BS2 slöar på mellan kodraderna". Om du bara siktar på momentanförbukningen kan du bortse från detta block.
Ett annat alternativ är att ha en räknare som med jämna mellanrum "töms" av BS2 en extern krets alltså.
Du har ju en del kommandon som "räknar" pulser typ PULSIN,COUNT eller vad de nu heter. Dock får du nog se till att "tömma" variabeln med jämna mellanrum så den inte flödar över.
Ett problem som jag ser med BS2 är att du inte har interupt (ungefär som multitasking) och hur du än gör riskerar du att missa pulser, en av många anledningar att inte använda BS2. Detta innebär att du NOGA måste avväga kodraderna som används om du vill ha korrekta värden efter ett tag eller se till att ha koll på "vad som skulle ha förbrukats medans BS2 slöar på mellan kodraderna". Om du bara siktar på momentanförbukningen kan du bortse från detta block.
Ett annat alternativ är att ha en räknare som med jämna mellanrum "töms" av BS2 en extern krets alltså.
Ja antingen så cyklar du eller så åker du båt
Jag förstod inte riktigt vad promlemet är men jag vet däremot hur man kopplar in en npn sensor.
Sensorn har antagligen 2 eller 3 trådar. Jord, matning och signal eller bara jord och signal. Hursomhellst så kopplar du bara in signalen på en pinne på processorn och ett pull-up motstånd på samma pinne till +5V. Kolla dokumentationen hur stort motstånd du ska ha men jag tippar ett par kohm.
Om du har en matnings tråd koppar du den till en lämplig spänningskälla. Jordtråden kopplas till 0V på processorn.

Jag förstod inte riktigt vad promlemet är men jag vet däremot hur man kopplar in en npn sensor.
Sensorn har antagligen 2 eller 3 trådar. Jord, matning och signal eller bara jord och signal. Hursomhellst så kopplar du bara in signalen på en pinne på processorn och ett pull-up motstånd på samma pinne till +5V. Kolla dokumentationen hur stort motstånd du ska ha men jag tippar ett par kohm.
Om du har en matnings tråd koppar du den till en lämplig spänningskälla. Jordtråden kopplas till 0V på processorn.
Ingen av bilderna är rätt. Skippa den extra transistorn.
Sätt bara (som v-g och rehnmaak också skrev) ett motstånd på
ca 10 kohm (inte så jätte kritiskt, allt mellan 1-100 kohm
kommer sannolikt att fungera) mellen "signal" och "+Vcc". Koppla
sedan "signal" till pinnen på BS2'an och kör den som en ingång...
Och det står ju faktiskt också i bilden du visade :
"When the sensor is off, the NPN output will float, and any
digital circuitry needs to contain a pull-up resistor."
Notera också att den transistor som är inritad alltså sitter
*inne* i sensorn, den ska inte kopplas till utanför sensorn...
Sätt bara (som v-g och rehnmaak också skrev) ett motstånd på
ca 10 kohm (inte så jätte kritiskt, allt mellan 1-100 kohm
kommer sannolikt att fungera) mellen "signal" och "+Vcc". Koppla
sedan "signal" till pinnen på BS2'an och kör den som en ingång...
Och det står ju faktiskt också i bilden du visade :
"When the sensor is off, the NPN output will float, and any
digital circuitry needs to contain a pull-up resistor."
Notera också att den transistor som är inritad alltså sitter
*inne* i sensorn, den ska inte kopplas till utanför sensorn...
Nä, hi hi jag förstår att du inte fattar. Jag har ju ritat helt fel. Vilken tur att kollade med er. Tack för hjälpen Sodjan och v-g!!sodjan skrev:Då fattar jag inte ett smack av vad du har ritat...
Utgången på första bilden har *kollektorn* som utgång. Stämmer med databladet.
På de 4 andra bilderna (dina bilder ?) är BS2'an kopplad till *basen*...
???
Hur är det man skall tänka för att förstå hur det fungerar? Såhär?
sensorn ger ingen signal: sensorn stoppar ström så spänningen ligger på mot Stampens input pin (genom motständet)
sensorn ger signal: sensorn öppnar för ström igenom och trycket mot Stampens input pin minskar därmed

Tre följdfrågor:
1. Hur listar man ut vilket motstånd man skall ha?
2. Måste man inte ha något motstånd precis innan jord för att inte ström skall rusa genom när sensorn ger signal, eller bromsar sensorn själv detta?
3. Kommer spänningen mot Stampens I/O pin att sjunka till 0V när sensorn släpper genom ström?
mvh, Nicke
sensorn ger ingen signal: sensorn stoppar ström så spänningen ligger på mot Stampens input pin (genom motständet)
sensorn ger signal: sensorn öppnar för ström igenom och trycket mot Stampens input pin minskar därmed

Tre följdfrågor:
1. Hur listar man ut vilket motstånd man skall ha?
2. Måste man inte ha något motstånd precis innan jord för att inte ström skall rusa genom när sensorn ger signal, eller bromsar sensorn själv detta?
3. Kommer spänningen mot Stampens I/O pin att sjunka till 0V när sensorn släpper genom ström?
mvh, Nicke
Kan svara på den första.
I verkligheten så väljer man motståndet efter hur mycket brus man tillåter, effektförbrukningen, inte mindre än vad sensorn klarar och till viss del beroende på stig- och fall-tider.
Fast ett 10kohms motstånd fungerar säkert utmärkt(vad jag brukar stoppa dit som standard på pull upp).
I verkligheten så väljer man motståndet efter hur mycket brus man tillåter, effektförbrukningen, inte mindre än vad sensorn klarar och till viss del beroende på stig- och fall-tider.
Fast ett 10kohms motstånd fungerar säkert utmärkt(vad jag brukar stoppa dit som standard på pull upp).
1:
*Minsta* värdet på pullup motståndet ges av det maximala värdet som
anges i databladet för "Ausgangstrom", alltså 20 mA (15 mA vid 24V).
*Största* värdet är betydligt mer komplext att ange. Det beror bl.a på
hur miljön ser ut där prylarna sitter. hur långa kablarna är m.m m.m.
Mindre värde ger bättre störokänslighet men högre strömförbrukning.
Högre värde tvärtom...
10 kohm är ett bra standard-pullup-värde i normala miljöer.
2:
Det går aldrig högre ström genom ensorn än vad pullup motståndet
tillåter.
3:
Inte riktigt. En vanlig bipolär transistor (NPN i detta fall) har ett
visst spänningsfall över sig när den ledar. Dock är det nornalt lägre
(med marginal) än gränsen för en "nolla" för BS2'an. Så det är
alltså inget problem.
*Minsta* värdet på pullup motståndet ges av det maximala värdet som
anges i databladet för "Ausgangstrom", alltså 20 mA (15 mA vid 24V).
*Största* värdet är betydligt mer komplext att ange. Det beror bl.a på
hur miljön ser ut där prylarna sitter. hur långa kablarna är m.m m.m.
Mindre värde ger bättre störokänslighet men högre strömförbrukning.
Högre värde tvärtom...
10 kohm är ett bra standard-pullup-värde i normala miljöer.
2:
Det går aldrig högre ström genom ensorn än vad pullup motståndet
tillåter.
3:
Inte riktigt. En vanlig bipolär transistor (NPN i detta fall) har ett
visst spänningsfall över sig när den ledar. Dock är det nornalt lägre
(med marginal) än gränsen för en "nolla" för BS2'an. Så det är
alltså inget problem.