UART bezprzewodowo...

Apr 18, 2009 5 Replies

Witam!!


Ostatnio natrafiłem (dzięki artykułowi z EP o robocie Maor) na ciekawe moduły do komunikacji bezprzewodowej po uarcie ;).. wygląda to tak:

formatting link
?site=products&type=853&details=7771Z opisu wynika, że jest to po prostu bezprzewodowy UART (można zamiast tego modułu stosować inne, przewodowe)... W sumie nie jest to nic skomplikowanego - jakiś interfejs USB->UART i dalej uC i RF ;)... może da się to zrobić samemu, taniej?? :) moduły radiowe można kupić już za ok 20zł, na przykład tu:
formatting link
(jest też na 868MHz) Transfer do 115200bps, więc dla UARTa jak znalazł ;)... i interfejs SPI, więc mały AVR z 1 uartem i z jednym SPI wystarczy ;)... Pytanie tylko - czy może ktoś coś takiego próbował robić?? Jak to się sprawdza w praktyce?? A może są w necie gotowe rozwiązania?? A jak się ma tego typu moduł w porównaniu do BlueTooth'a?? Tam też można zrobić "radiowy" port COM ;)... powiedzmy, że biorąc pod uwagę tylko i wyłącznie transmisję komputer-urządzenie, a w komputerze BT mamy na "dzień dobry"... wydaje mi się, że taki moduły BT są stosunkowo drogie, ale może się mylę??



Co o tym sądzicie??



Pozdrawiam! Konop



PS Nie chodzi tu o masową produkcję, ale o trochę radochy też ;).. jak mam zrobić sam i wydać więcej, to mi się nie chce, ale jak można trochę oszczędzić przy okazji, to czemu nie?? ;)...


Konop pisze:

Całość taniej niż za 45zł? Jesteś bezczelny ;)

Moduł za 20, przesyłka, AVR i czas... trochę bez sensu, chyba, że chcesz dla praktyki ;)

m.

Po pierwsze dla praktyki czy też dla frajdy też trochę bym chciał ;)... Po drugie - Seguro mam na miejscu, więc wysyłka odpada ;)... a po trzecie - cena takiej "pary" (jeden moduł do kompa z USB + jeden moduł odbiorczy do urządzenia) to ponad 100zł... tymczasem 2 moduły radiowe to ok 40zl, zostaje ponad 60zł na resztę (2 AVRy + coś co zrobi z USB UARTa, jakiś FT232 lub AVR CDC ;))... No i można sobie podorabiać bajery itp ;)... Można rozważyć sam zakup hardware'u i przerabianie softu, ale po pierwsze nie mam pewności na jakim uC to jest no i ciężko będzie coś dolutować ;)... Tak pytam, żeby wybadać grunt ;)... Swoją drogą - myślę, nad zrobieniem sobie gotowych modułów UARTa, takich "standardowych" ;)... czyli jak potrzebuje w urządzeniu UART jakiś, to sobie w urządzeniu robię tylko piny i zostawiam miejsce na standardową płytkę, po czym podłączam tam co chcę - moduł z FT232, z MAX232, jakąś IrDĘ, BT, RS-485 albo własnie taki moduł bezprzewodowy ;)... miałoby to o tyle sens, że wiele urządzeń używanych jest dosyć rzadko, więc montowanie w każdym FT232 jest bez sensu!! :)... Oczywiście mowa tu o urządzeniach "laboratoryjnych" (np. programatory), gdzie nie chodzi o to, żeby wszystko było cacy-pacy w pudełku zapakowane ;)....

Pozdrawiam Konop

Taniej to mo¿na rozwa¿aæ przy produkcji nie jednostkowej, ale wielokrotnej. To mo¿e byæ 10, 100, 1000,10 000 szt. Je¶li to ma byæ 1 szt. to mo¿e byæ taniej na 2x PC. (bo mamy i trzeba dokupiæ tylko Bluetooth).

Chcia³em jednak przy okazji podzieliæ siê ze swoimi przemy¶leniami. Skoro wiele protokó³ów jest licencjonowanych i nie mo¿na ich u¿ywaæ miêdzy dwoma procesorami (Dallas 1-wire, Philips I2C, BT itp.), to faktycznie wychodzi, ¿e RS232 jest najkorzystniejszy. Jego u¿ywanie nie jest objête, ¿adnymi licencjami. Mo¿na go dowolnie modyfikowaæ i jest powszechny. W takim razie, je¶li tylko mo¿emy jego obs³ugê stosowaæ z prêdko¶ci± zadawalaj±c± - nale¿y tak robiæ. Ma³o tego. Nic nie stoi na przeszkodzie, aby u¿yæ go jako transmisjê

1-przewodow± (+masa oczywi¶cie).

Sylwester Łazar pisze:

Jeżeli chodzi o RS232 jako sam UART (np. 8N1) - to OK. Ale jeżeli też o warstwę fizyczną to bym się sprzeczał. RS232 ani nie jest przyjemny w stosowaniu (te napięcia +/- kilka V conajmniej), ani błędoodporny (różnice zegarów powyżej 2% rozwalają transmisję, zwykły bit parzystości dużo nie pomoże), ani nie ma dużego zasięgu przy sensownej na dzisiejsze czasy prędkości. Jeżeli natomiast możemy zmienić warstwę fizyczną kosztem jednego małego buforka - to RS485 jest przy tym cud miód. 1Mbps na kilkaset metrów nie stanowi problemu, do tego można gadać naraz do wielu urządzeń. A jeżeli chodzi o szybką transmisję na płytce - to SPI jest idealny. Multislave, synchroniczny zegar, kilkadziesiąt Mbps bez problemu.

Ró¿nice sta³e w czasie? Transmisjê asynchroniczn±? Przy przesy³aniu bajtów? Nie s±dzê. 5% to jeszcze bym powiedzia³ - mo¿e siê zdarzyæ w systemach sprzêtowych sprzed 30 lat. Wydaje mi siê, ¿e to wynika wprost z matematyki: Przek³amanie mo¿e dotyczyæ zmiany po³o¿enia próbki o 1/2 bitu. Zwykle, z natury rzeczy, dotyczy to ostatniego bitu przesy³anego bajtu danych (uwzglêdniaj±c bit STARTu i STOPu. Dla transmisji 8-bitowej, bez sprawdzania parzysto¶ci, bit STOP o d³ugo¶ci

1, mamy 10 transmitowanych bitów. Przy nadawaniu 10 bitów mamy: (1/2)/10*100%= 5% Je¶li dodamy parzysto¶æ, to je¶li chodzi o wra¿liwo¶æ na ró¿nice prêdko¶ci, wygl±da, ¿e jest jeszcze gorzej: (1/2)/11*100%= ~ 4,5% No, ale nie 2%

Ju¿ w samochodowych systemach OBD II, przy transmisji szeregowej, nadawany by³ bajt synchronizacji 55h. przy 5bps. Dopiero potem system prze³±cza siê na 8192bps Odbiornik powinien siê dostosowaæ do prêdko¶ci nadajnika. Co za ró¿nica czy nadajemy z 115kbodów, czy 20% szybciej 138kbodów. Wa¿ne, aby urz±dzenia siê zsynchronizowa³y.

W starych rozwi±zaniach na 8051 @12MHz i Fclk/Finstr=12 to mo¿e i by³ problem z rozdzielczo¶ci± w ustawieniu prêdko¶ci transferu. Teraz na mikrokontrolerach o rz±d wiêkszym zegarze i mniejszym wspó³czynniku Fclk/Finstr to ju¿ nie jest problem.

Powiedzia³bym, ¿e teraz transmisja w RS232 czy RS485 daje nowe mo¿liwo¶ci. Wynikaj± one bezpo¶rednio ze zwiêkszenia prêdko¶ci zegara mikrokontrolerów i do¶wiadczenia.

W komputerach PC ci±gle jeszcze widniej± standardy prêdko¶ci nadawania. U mnie Windows daje takie mo¿liwo¶ci wybrania prêdko¶ci COMa:

110,300,1200,2400,4800,9600,19200,38400,57600,115200,230400,460800,921600. Jakie to wydaje siê g³upie. Dlaczego nie wpisaæ dowolnej prêdko¶ci, a tylko standardy? No przynajmniej do tych 38400.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required