Sida 1 av 1
koppla sensor av typ "npn sinking" till basic stam
Postat: 10 maj 2007, 14:51:56
av annerborn
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.
Postat: 10 maj 2007, 15:08:13
av sodjan
Länk till datablad för sensorn ?
> Är jag helt ute och cyklar här?
Japp, delvis, på en vattencykel...
Sannlikt är det bara ett pullup motstånd till 5V som
behövs, men låt oss se vad databladet säger först...
Postat: 10 maj 2007, 15:10:55
av v-g
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å.
Postat: 10 maj 2007, 15:12:14
av rehnmaak
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.
Postat: 10 maj 2007, 15:33:29
av annerborn
Såhär ser sensorns anslutningar ut:
Såhär beskrivs NPN sinking:
Det här var min första plan (innan jag kom på att stampen kanske inte kan känna av på detta sätt)
Men det kanske är såhär man måste göra?
eller?
Postat: 10 maj 2007, 15:35:52
av annerborn
Postat: 10 maj 2007, 15:44:18
av sodjan
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...
Postat: 10 maj 2007, 16:13:47
av annerborn
Det är ingen extra transistor jag ritat. ringen (och allt däri) är sensorn.
Postat: 10 maj 2007, 16:17:00
av sodjan
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*...
???
Postat: 10 maj 2007, 17:01:14
av v-g
Såhär skall du koppla:
Hur sensorn internt är uppbyggd är nog bäst att lämna därhän

Postat: 10 maj 2007, 19:39:44
av annerborn
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*...
???
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!!
Postat: 10 maj 2007, 19:59:34
av annerborn
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
Postat: 10 maj 2007, 20:20:37
av Micke_s
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).
Postat: 10 maj 2007, 22:21:50
av sodjan
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.