Styra en enhet med RS232

Berätta om dina pågående projekt.
Användarvisningsbild
petertub
Inlägg: 960
Blev medlem: 21 september 2022, 15:59:11
Kontakt:

Re: Styra en enhet med RS232

Inlägg av petertub »

En serieport i en dator samt programmet kermit är av stort värde som "samtalspartner" till den processor du väljer.
Användarvisningsbild
JimmyAndersson
Inlägg: 26398
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Styra en enhet med RS232

Inlägg av JimmyAndersson »

Den här mediaspelaren kan kopplas direkt (via RS232-porten) till en dator, så jag är också nästan 100% säker på att det inte är TTL-nivåer (0/5V).

Parentes:
Det finns förresten en kompatibel app (till Android och iOS) som heter ”Undok” som gör att man kan styra mediaspelaren med mobilen.
Men det är ju kuligare att bygga själv. T.ex med valfri Arduino, en modul för RS232, knappar och lysdioder eller display.
Användarvisningsbild
cazz
Inlägg: 1012
Blev medlem: 11 maj 2009, 12:44:01
Ort: Småland

Re: Styra en enhet med RS232

Inlägg av cazz »

Hmm kan man styra den med en app?
Det visste jag inte och de kan vi testa i helgen men kanske kan testa i helgen.
Den ena är synskadad och den andra är blind så det måste vara så enkelt som möjligt, dock kan dom använda en viss nivå en mobiltelefon.
Hade varit trevligt om den hade ett stöd för webhook eller liknande så kunde man köra det via LAN/Wifi :D
Nerre
Inlägg: 27131
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Styra en enhet med RS232

Inlägg av Nerre »

JimmyAndersson skrev: 6 mars 2025, 19:15:53 Den här mediaspelaren kan kopplas direkt (via RS232-porten) till en dator, så jag är också nästan 100% säker på att det inte är TTL-nivåer (0/5V).
Porten på en dator är väl alltid +/- 12 V nivå? Det är ju det som är "standarden".

Att använda en 9-polig D-SUB med andra nivåer är helt ostandard.

Edit: Missade att du skrev "inte".
Användarvisningsbild
JimmyAndersson
Inlägg: 26398
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Styra en enhet med RS232

Inlägg av JimmyAndersson »

Jag skrev nog lite otydligt. Tänkte skriva +/- 12V men så dök det upp en grej som stressade mig, så det enda som fanns kvar i hjärnan var ”inte TTL”. :)

Cass:
Jag tycker det är intressant med syn/hörsel/mm-hjälpmedel och har pysslat lite med det, så jag ska fundera och kika lite. (Om stress mm lugnar sig..)
Lärde mig förresten hand-alfabetet (alfabetet för teckenspråk) tidigare i veckan. Hjälper inte här, men lite kan man väl få skryta. :D
malman
Inlägg: 661
Blev medlem: 13 februari 2006, 01:17:03
Ort: Arboga

Re: Styra en enhet med RS232

Inlägg av malman »

Redan utrett men….. Vad ni gör det svårt för er…. Är man osäker på nivåer är det ju bara att mäta vad radion ger för utspänning på sin tx tamp…. (Dvs i detta fall mäta på pinnar 2 resp 3 i förhållande till pin5 (jord) i dsuben…)
Antingen får man 0 eller 5v, eller så får man + eller - 6 till 12v (minns nu inte vilken som är idle nivå från sändaren)

Projektet i sig är väldigt straight forward….

Du behöver en ttl tll rs232 modul…. Finns massor, inga konstigheter, bara att hugga någon…. De är normalt byggda på en max232krets, eller någonefterföljare/klon… matas med typ 5v samt gnd, och man kopplar rx och tx signal från arduinon till denna… 4 tampar totalt… å sen en dsub sladd till den andra devicen.

I arduinon använd inbyggt std biblotek för att nyttja seriekommunikation…. Serial.begin osv. Serial.print för att skicka ascii tecken till serieporten…. Lätt googlat

Det som möjligen kan vara lite tråkigt i början är att tex en arduino uno, bara har en hårdvaru serieport, som också delas med usb-interfacet till datorn för programmering… så det kan trassla om båda är anslutna samtidigt….

Vill man slippa den olägenheten kan man välja en arduino med flera serieportar, eller välja en sk bit-bangad serieport…. Dvs man använder valfria digital io portar och hanterar serieportshanteringen helt i mjukvara, via färdiga librarys…(software serial)
(I det fallet finns lite begränsningar i hastighet mm, men borde funka i denna mkt enkla applikation)

Seriekomm är inget att vara rädd för… ett mkt basic koncept som är mkt väldokumenterat på nätet….

Kanske blir ont om io pinnar för att ansluta 10st knappar direkt på en liten arduino, men det kan man lösa genom att koppla dem i en matris…4 utgångar som skannas en i taget… fyra ingångar, och sen upp till 16 knappar i skärningspunkterna mellan de 4 plus 4 ledarna…. Iofs 8 ledare för 16 knappar…. 3+4 ger 12 kombinationer… 3x3=9 osv… beroende på behov…

I första läget kan iofs usb/serieports krocken vara av godo… då usb förbindelsen till arduinon i praktiken är en logisk serieport fraktad över usb… så i tidig utveckling skriver du bara kod som pratar tillbaka till en serieportsterminal i datorn via samma sladd so:du laddar koden till arduinon…. Serieportsterminalen finns inbyggd i arduino utvecklingsmiljön…
Samma serial.begin serial.print som nämnt ovan… denna serieport över usb dyker upp i datorn som en com-device…
När du sedan är redo för anslutning till radion, så är det bra att först koppla bort usb’n, koppla in ttl/rs232 adaptern och sladden till radion o testa om det funkar som avsett….
Har du använt en arduino och ett program som kommunicerat tillbaka till datorn på något sätt, så har du redan använt serieports kommunikation. Rs232 är bara specen på de elektriska nivåerna som används för att överföra en serieport över tex en dsub sladd… men begreppet rs232 används ofta lite slarvigt som synonymt med serieportskommunikation. Andra begrepp i sammanhanget är asynkron kommunikation, uart (hw i cpu’n som haterar serieports komm) osv…
Användarvisningsbild
FormerMazda
Inlägg: 6389
Blev medlem: 27 februari 2006, 14:59:36
Ort: Asby (Östergötland)

Re: Styra en enhet med RS232

Inlägg av FormerMazda »

Ja jag förstår inte hur det kan vara en fråga om RS232 är TTL eller inte..? Läser man att det är RS232 så ska man anta att det är spänningsnivåer gällande RS232, och det är inte TTL-nivåer. (-3~15V - +3~15V vs 0-5V)
https://sv.wikipedia.org/wiki/RS-232
https://www.induo.com/b/vad-ar-rs-232/
Sen kan nån ha väldigt generösa tåligheter för vad som är 1 eller 0 i sin implementation och där kan man kanske få TTL-nivåer att funka. Men när en TTL-RS232 omvandlare kostar som en glass så vet jag inte varför man skulle stimma om det.

För att testa din arduino så kan man som nämnt använda en dator med nån lyssnande mjukvara i, min goto för det är PuTTY ( https://www.putty.org/ )
Men med den ser du bara OM du lyckas skicka data, inte om datan mer än följer dokumentationen så som du tolkar den. Detta förutsätter att du har en com-port i datorn. Men även dessa som USB-RS232 finns för glasspengar, eller ja, kanske mer som en lunch då. :)
Men enda garanterade testet kommer vara mot enheten, så ta med en dator med arduino IDE i så du kan tweaka dina kommandon på plats om så behövs.
Användarvisningsbild
Icecap
Inlägg: 26610
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Styra en enhet med RS232

Inlägg av Icecap »

Många anger "RS232" som en beskrivning av asynkron seriell kommunikation.

I själve verket betyder RS232 att '1' är mellan -3V och -15V och att '0' är mellan +3V och +15V.
Minns något om att det numera är -3V till -12V och +3V till +12V.

RS232 anger INTE att det finns ett visst kommunikationsprotokoll (antal databits, antal start eller stopbits, följden på databits osv.) eller liknande.

Jag har sett "5V RS232" som beskrivelse, samt "Logic Level RS232", allt är ju totalt fel med sådana beskrivningar.

Vill man VETA, mäter man mellan GND och enhetens TX, är det ett negativt värde är det RS232, är det positivt är det sannolikt "Logic Level".
Användarvisningsbild
cazz
Inlägg: 1012
Blev medlem: 11 maj 2009, 12:44:01
Ort: Småland

Re: Styra en enhet med RS232

Inlägg av cazz »

Hej hop
Vi ska mäta och kolla hur det ligger till med spänningen.
Sedan ska vi se vad vi gör för att gå vidare.
Första steget är att se om det fungerar bra med arduino och ttl till rs232 modul tillsammans med en dator.
Sedan se med knappar så man kan trycka.

Sedan en plus är att köpa en 16 kanal sändare och mottagare till detta projekt som går på 433Mhz bandet.
Går säkert göra hur som helst men gör man det enkelt så finns det ju färdiga med reläer som man kan koppla till.
Då kan de använda en radio fjärrkontroll enkelt utan att rikta den rätt.
Men det är ju bara en bonus som man kan tänka sig längre fram :)
Användarvisningsbild
carpelux
Inlägg: 1939
Blev medlem: 13 oktober 2007, 12:33:33
Ort: Varnhem

Re: Styra en enhet med RS232

Inlägg av carpelux »

cazz skrev: 6 mars 2025, 19:31:39 Hade varit trevligt om den hade ett stöd för webhook eller liknande så kunde man köra det via LAN/Wifi :D
Då kanske en ESP32 eller ESP8266 skulle kunna vara ett alternativ. Stöder WiFi och kan agera som en webserver där man kan surfa in och välja kanal.

Programmeras i Arduino IDE så utvecklingen är likartad till att använda någon typ av Arduino.
Palle500
Inlägg: 4901
Blev medlem: 6 juni 2015, 14:53:06
Ort: Strängnäs

Re: Styra en enhet med RS232

Inlägg av Palle500 »

Jag skulle börja med att koppla upp min laptop mot internetradion med USB till RS-232 adapter, ev måste pinne 2 och 3 korsas men om adaptern har en D-sub 9p hane och radion har en D-sub 9p hona så borde det fungera direkt. Se bilden här nere.

Innan inkopplingen av D-suben till internetradion skulle jag testa att det fungerar att sända från laptopen genom att bygla stift 2-3 på RS-232 adaptern och se att det jag skickar kommer tillbaka.

Installera/starta puTTY och ställ in terminalläge 19200 baud ingen paritet, handskakning etc.
Prova att skicka några tecken och se att du får tillbaka. Ta bort byglingen av stift 2-3 och se att inget kommer tillbaka. Ev behöver du ställa in att puTTY inte skall visa det du skickar.

Koppla in kabeln i internetradion och skicka ett lämpligt kommando och se gensvaret. Ev kan det behöva byglas på andra signaler typ DSR, CTS beroende på vad internetradion behöver. Bäst är att endast ansluta pinne 2,3 och 5 för att utesluta andra signalbehov från internetradion. Ev så retuneras skickade tecken från internetradion som bekräftelse på att den mottagit tecknet.

När allt fungerar så skulle jag gå vidare med att få Arduino att prata med internetradion via en TTL till RS-232 adapter osv.
IMG_6256.jpg
https://www.cable-tester.com/rs232-cabl ... -straight/
https://www.cable-tester.com/rs232-pin-out/
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Glenn
Inlägg: 36122
Blev medlem: 24 februari 2006, 12:01:56
Ort: Norr om Sthlm
Kontakt:

Re: Styra en enhet med RS232

Inlägg av Glenn »

petertub skrev: 6 mars 2025, 19:09:04 En serieport i en dator samt programmet kermit är av stort värde som "samtalspartner" till den processor du väljer.
Med risk för att vara lite OT, men varför kermit av alla program ?

Det är uråldrigt och notoriskt svårhanterat, den enda gången jag använder det är om det är det enda som finns tillgängligt.


Angående rak/korsad kabel kan man ju aldrig veta vad som behövs eftersom specifikationen är väldigt luddig..
Användarvisningsbild
petertub
Inlägg: 960
Blev medlem: 21 september 2022, 15:59:11
Kontakt:

Re: Styra en enhet med RS232

Inlägg av petertub »

palle har varit med förr :-)
Användarvisningsbild
mrfrenzy
Co Admin
Inlägg: 15335
Blev medlem: 16 april 2006, 17:04:10

Re: Styra en enhet med RS232

Inlägg av mrfrenzy »

Här är en bra jämförelse på spänningsnivåerna:
Skärmbild 2025-03-07 111232.png
https://blog.opto22.com/optoblog/rs232- ... converters
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
cazz
Inlägg: 1012
Blev medlem: 11 maj 2009, 12:44:01
Ort: Småland

Re: Styra en enhet med RS232

Inlägg av cazz »

Palle500 skrev: 7 mars 2025, 09:59:15 Jag skulle börja med att koppla upp min laptop mot internetradion med USB till RS-232 adapter, ev måste pinne 2 och 3 korsas men om adaptern har en D-sub 9p hane och radion har en D-sub 9p hona så borde det fungera direkt. Se bilden här nere.

Innan inkopplingen av D-suben till internetradion skulle jag testa att det fungerar att sända från laptopen genom att bygla stift 2-3 på RS-232 adaptern och se att det jag skickar kommer tillbaka.

Installera/starta puTTY och ställ in terminalläge 19200 baud ingen paritet, handskakning etc.
Prova att skicka några tecken och se att du får tillbaka. Ta bort byglingen av stift 2-3 och se att inget kommer tillbaka. Ev behöver du ställa in att puTTY inte skall visa det du skickar.

Koppla in kabeln i internetradion och skicka ett lämpligt kommando och se gensvaret. Ev kan det behöva byglas på andra signaler typ DSR, CTS beroende på vad internetradion behöver. Bäst är att endast ansluta pinne 2,3 och 5 för att utesluta andra signalbehov från internetradion. Ev så retuneras skickade tecken från internetradion som bekräftelse på att den mottagit tecknet.

När allt fungerar så skulle jag gå vidare med att få Arduino att prata med internetradion via en TTL till RS-232 adapter osv.
IMG_6256.jpg
https://www.cable-tester.com/rs232-cabl ... -straight/
https://www.cable-tester.com/rs232-pin-out/
hmm jo jag skulle kunna testa att koppla till en dator (Tur att jag har gamla datorer som har serieport)
Men kanske något jag missar och ställer en dum fråga, men kan jag inte bara ta en rak kabel och sedan köra Putty och se om jag kan skicka kommando att byta kanal?
Bara för att testa att det verkligen fungera som det ska.
Eller är att bygla 2-3 för att se att det verkar fungerar att köra med Putty?
Jag kör Putty väldigt ofta (SSH) men aldrig till serial så man kanske måste testa först?.

Får köpa en Dsub kabel som är hane-hane först :D
Skriv svar