Alternatywa dla Arduino od Microsoftu

05.08.2011 15:05, Autor: Anna Rymsza (Xyrcon), Kategoria: News
NewsImage

Arduino, popularna wśród zawodowych elektroników i hobbystów otwarta platforma do budowania prototypów, doczekała się konkurencji.

.NET Gadgeteer to otwartoźródłowy zestaw narzędzi pozwalający na oprogramowanie małych urządzeń elektronicznych. .NET Gadgeteer korzysta z .NET Micro Framework i jest kompatybilny z Visual Studio i Visual C# Express. Oprogramowany układ można wyposażyć w różne zewnętrzne komponenty, jak sensory, kamery, manipulatory czy wyświetlacze. Pierwszy, ale z pewnością nie jedyny kompatybilny z frameworkiem .NET Gadgeteer zestaw elementów — FEZ Spider Starter Kit — wyprodukuje firma GHI. Źródła .NET Gadgeteera dystrybuowane są na licencji Apache Licence 2.0 i można je pobrać z CodePlex.

Pomysł na .NET Gadgeteer zrobił się kiedy Steve Hodges pracował nad projektem SenseCam — kamerą, którą można nosić na sobie, aby robiła zdjęcia i zbierała informacje o zajęciach noszącego. Zbudowanie prototypu i oprogramowanie go zajęło twórcom dwa lata. Ale ten proces można skrócić — .NET Gadgeteer pozwala na zbudowanie podobnego urządzenia w... kilka dni. Twórcy mają nadzieję, że .NET Gadgeteer pomoże zawodowym elektronikom, hobbystom czy studentom szybko realizować projekty i nie wynajdować koła od nowa za każdym razem. Ponadto kompatybilność z systemem Windows i powszechnie używanymi w firmach narzędziami programistycznymi sprawi, że .NET Gadgeteer zwróci uwagę przedsiębiorców.

Urządzenia wbudowane „zrób to sam” zdobywają coraz większą popularność. Obok Arduino czy .NET Gadgeteer powstaje wiele innych rozwiązań tego typu: od prostych, takich jak Netduino (klon Arduino, podobnie do .NET Gadgeteer pracujący w oparciu o platformę .NET), po całkiem nietuzinkowe, jak Raspbery Pi — kompletny, działający pod kontrolą Ubuntu komputer wielkości pendrive'a.

r   e   k   l   a   m   a

Komentarze (34)  

AvatarUżytkownik jest nieaktywny
StawikPiast | 05.08.2011 15:34#1

fajne z 2 lat do tygodnia :)

AvatarUżytkownik jest nieaktywny
RaveStar | 05.08.2011 15:46#2

I po komu jakiś kicz do klocków lego jak jest profesjonalne SDK do sterowania robotami dla Androida?
http://webhosting.pl/Android.steruje.robotami.Google.udostepnia.SDK.do.budowania...

Co by nie wypowiadać się zbyt sucho:
http://www.robotreviews.com/blog/eigenlance/android-os-now-used-drive-real-robots

http://www.pocketmagic.net/?p=1398

Nie trzeba pisać sterowników do USB czy Bluetooth jak to ma miejsce na Windowsa. Wszystkim zajmuje się super prosty Linux.

I zupełnie nie rozumiem tego kolesia od senseCam, skoro soft na Androida robiący zdjęcia można zrobić w góra dwa dni (jak nie w 2 godziny, ale dałem mu fory) i niczym nie będzie się różnić w działaniu. Tutaj przykład jak oprogramować kamerkę na Androidzie:

brighthub.com/mobile/google-android/articles/43414.aspx

AvatarUżytkownik jest nieaktywny
PcSA | 05.08.2011 16:04#3

@RaveStar
"Zapewne" budowanie całego robota jest porównywalne cenowo z takim Kit'em i złożenie jest równie proste?

Trzeba od czegoś zawsze zacząć. Zaczynając od czegoś mega skompilowanego można się szybko zirytować w razie niepowodzeń i porzucić grzebanie w tym. Na początek są Kit'y - potem samemu się robi co komu potrzebne.

Poza tym czyż nie miło jest mieć możliwość wyboru tego w czym (język) i czym (sprzęt) wykonać jakieś zadanie?

AvatarUżytkownik jest nieaktywny
AndrzejG | 05.08.2011 16:05#4

Pomysł się zrobił? Chyba miało być "zrodził się".

AvatarUżytkownik jest nieaktywny
RaveStar | 05.08.2011 16:19#5

@PcSA
Oczywiście, tylko że najpierw projekt trzeba zaplanować, a nie jak ten koleś zrobił, że najpierw pospawał ramę, a później szukał pasującego silnika.

Avatar
refref (niezalogowany) | 05.08.2011 16:29#6

@RaveStar na .net jest środowisko robotic studio. takie ułatwienie do pisania sterowników robotów. i nie trzeba pisać sterów do usb czy bluetooth. wszystko jest już napisane a program można złożyć z gotowych snippetów (w formie diagramu przepływu sterowania)

AvatarUżytkownik jest nieaktywny
przemek1234 | 05.08.2011 16:30#7

Program Open Source od Microsoftu, trzeci po Windows 7 USB/DVD Download Tool i sterownikach dla Linuksa wirtualizowanego przez Hyper-V. Coś widzę, że ta firma coraz bardziej się do OO przekonuje.

AvatarUżytkownik jest nieaktywny
przemek1234 | 05.08.2011 16:32#8

Pomyłka, czwarty, .NET Micro Framework też jest Open Source.

AvatarUżytkownik jest nieaktywny
matzu | 05.08.2011 16:38#9

Cieszyć może fakt, że .NET się rozwija. Ja jednak na tą chwilę jestem przede wszystkim ciekaw jak ten projekt zostanie przyjęty przez wspomnianych w news-ie zawodowych elektroników.

AvatarUżytkownik jest nieaktywny
StawikPiast | 05.08.2011 17:11#10

@RaveStar

tak z pewnoscia android ma wbudowane sterowniki dla manipulatorow, i wszelkiej masci czujnikow.
Pewnie androida tez sie da tak wykozystac, ale sory pisanie w api dla Androida nie jest moim zdaniem tak proste jak w pisanie w c#. Do tego jest to gotowe dedykowane rozwiazanie a takie zazwyczaj jednak przewyzszaja stabilnoscia i bezpieczenstwem systemy otwarte na kazda platforme. No i do tego dochodzi stabilnosc. Android co i rusz ma z nia problemy, wiec moim zdaniem srednio sie nadaje.

AvatarUżytkownik jest nieaktywny
PcSA | 05.08.2011 18:32#11

@RaveStar
Nie jestem przekonany, że czytamy news o tym samym. News jest o sprzęcie, a Ty wyjeżdżasz z softem: Androidem i jakimś SDK.

Poza tym nie wiem o jakim "kolesiu" do mnie piszesz - o tym, który zbudował/zaprojektował dany kit tak żeby tego sprzętu mogli używać inni?

AvatarUżytkownik jest nieaktywny
PcSA | 05.08.2011 18:38#12

Blah, ok mój błąd - jest o frameworku... Ja cały czas myślałem/czytałem o tym http://www.ghielectronics.com/catalog/product/297

AvatarUżytkownik jest nieaktywny
RaveStar | 05.08.2011 19:50#13

@StawikPiast
A może wymienisz choć jeden problem bezpieczeństwa lub stabilności związany z samym Androidem?

Nie da się pisać sterowników w C# kolego. Potrzeba wrapperów na biblioteki z C/C++. Jeżeli nie ma bibliotek do C#, to programowanie urządzeń możesz sobie darować. W Androidzie możesz programować z poziomu C/C++ jak to pięknie widać na przykładzie powyżej. Gdyby ten gość skorzystał z Andka od razu, to nie musiałby czekać 2 lata na jakiś lipny framework do .NET. Dodatkowo jesteś tutaj uzależniony od jednego układu. Na Andka możesz przebierać jak w ulęgałkach.

Reasumując, miło, że .NET próbuje sił na polu automatyki, ale poziom wsparcia jest na poziomie klocków lego. Ot ciekawostka i tyle.

Dodam jeszcze na marginesie, że składanie do kupy takiego aparatu fotograficznego wychodzi dużo drożej niż kupno używanego telefonu z Androidem, który posiada WiFi, Bluetooth, magazyn danych na SD, czy inne przydane w sterowaniu interfejsy. Dodatkowo soft na Androida można aktualizować jednym kliknięciem np. z FTP przez WiFi, nie trzeba do tego żadnego zewnętrznego oprogramowania. Tutaj pewnie za każdym razem trzeba latać z kablem i laptopem. Czyste marnotrawstwo czasu i pieniędzy z takimi toolkitami. Zupełnie bez sensu.

Avatar
technician (niezalogowany) | 05.08.2011 20:39#14

@RaveStar

Dzięki, że odpisałeś na wpis StawikPiast... Przeglądam od czasu do czasu ten portal i zauważam dziwną prawidłowość: Kilku użytkowników np. wyżej wspomniany, czy jakiś "Skubi" czy inny "MSF-cośtam" zachwalają wszystko co, w jakikolwiek sposób jest związane z firmą Microsoft, jest to, swojego rodzaju, fanatyzm, bo nie dostrzegają oczywistych wad prezentowanych rozwiązań - widzą tylko same superlatywy. Każde rozwiązanie na wady i zalety, ale żeby być tak zaślepionym chmmm...

Wracając do tematu, wolę już Arduino ma większy potencjał, ale kilkanaście projektów oparłem o Armadillo 9 i też spełniły założenia. Obecnie czekam na dostępność Raspbery Pi - mam kilka pomysłów. Ciekawy jest CompuLab Trim Slice Pro tylko ta cena 304 euro :-)

Avatar
ubuntu-usr (niezalogowany) | 06.08.2011 6:36#15

Widzieliście ten raspberrypi.org link, który podrzuciła nam redakcja DP? Masakra!! zużycie prądu bez akcesoriów tego urządzenia jest mniejsze od 1watt!! rozmiar w stadium alfa - ciut większy od karty kredytowej. I to jest komputer! Architektura procka - ARM 700 MHz, wersja bogatsza ma LAN i 256MB RAM. Grafika jak na take maleństo też robi wrażenie...

Twórcy urządzenia robią je z przeznaczeniem do Ubuntu, jednak nie stoi nic na przeszkodzie, aby wgrać Androida czy jakąkolweiek inną dystrybucje GNU/Linux.

Wiadro zimnej wody muszą na siebie wylać miłośnicy windows. żadna z obecnie wydanych wersji tego systemu nie zadziała na tym cudeńku.

Do masowej produkcji/sprzedaży Rasberry Pi trafi w czwartym kwartale tego roku. Cena wersji bogatszej to... 35 dolarów amerykańskich - według mnie za coś takiego to są grosze!

AvatarUżytkownik jest nieaktywny
wujcio | 06.08.2011 13:08#16

@matzu
Napisze ci jak - słabo. Swoją teorie opieram na tym że już są podobne rozwiązania z C# i jakoś ludzie na to nie rzucili się. Oczywiście w jakimś miejscu może to znaleźć swoje zastosowanie.

@StawikPiast
Ale jak wyjmiesz optykę z swojego telefonu bądź kupisz na allegro i będziesz chciał ją obsłużyć to i tak będziesz musiał siedzieć nad tym dość sporo czasu - najpierw będziesz rozszyfrowywał jakie komendy są wysyłane do takiej kamerki przez I2C a potem będziesz badał protokół tego żeby dostosować parametry do swojego uC.

Pamiętajcie jeszcze że te narzędzia będą pewnie wspierać typowe elementy przeznaczone do elektroniki (hobbystycznej) a nie na przykład elementy od telefonu. Oczywiście dla was teraz to żadna różnica ale polecam zerknąć na ceny części od telefonów a na części dla elektroników ( http://www.kamami.pl/index.php?categoryID=7593 ) Oczywiście tutaj mamy styczność z narzędziami open source (dla niektórych może to być dziwne jednak dla mnie nie bo tutaj głównie chodzi o to żeby ktoś tym zainteresował się i zrobił wsparcie dla na przykład takiego LCD od nokii 3310).

@RaveStar
"Dodam jeszcze na marginesie, że składanie do kupy takiego aparatu fotograficznego wychodzi dużo drożej niż kupno używanego telefonu z Androidem,"

Wyjdzie dużo taniej - już takie pomysły były na elektrodzie.

AvatarUżytkownik jest nieaktywny
RaveStar | 06.08.2011 13:12#17

@ubuntu-usr
Bardzo ciekawy wynalazek. Elektronika idzie do przodu i coraz więcej dostajemy za mniejsze pieniądze. A Windowsa? No cóż. To produkt mający wypchnąć potężne maszyny do przodu, tyle że moda na nie się już skończyła, tak jak i na Windows. XP rządzi i przetrwa Windows 8 razem z jego następcą.

Kolejna fala urządzeń, jak niektórzy przewidują, będzie związana ze sferą osobistą. Np. ozdoby (np. elastyczny PC na nadgarstku zamiast zegarka) i odzież. Tam też Windowsa nie widzę. ;)

Np.:
http://walyou.com/wrist-pc/

AvatarUżytkownik jest nieaktywny
RaveStar | 06.08.2011 13:40#18

@wujcio
"Wyjdzie dużo taniej - już takie pomysły były na elektrodzie."
Taniej wyjdzie kupić elektronikę niż używany telefon (300 PLN np. na Alledrogo) z Androidem?

Sam wyświetlacz:
http://www.piekarz.pl/?page=offer&item=33799
a reszta?

AvatarUżytkownik jest nieaktywny
przemek1234 | 06.08.2011 14:23#19

@ubuntu-usr:
Windows CE tam wejdzie. Windows 8 zresztą też będzie wydany w wersji ARM'owej ze względu na tablety.

Avatar
Anonim (niezalogowany) | 06.08.2011 14:52#20

Ale .NET nie nadaje się do urządzeń wbudowanych.
ZA DUŻE ZUŻYCIE RAMU
Nawet 5x większe niż w przypadku programów napisanych w C/C++.

Avatar
technician (niezalogowany) | 06.08.2011 15:10#21

Taa przemek1234, tylko jest jeden mały szkopuł, każdy następny Windows ma coraz wyższe minimalne wymagania, szczególnie dotyczy to pamięci RAM. ,
Wątpię aby Windows 8 miał mniejsze wymagania co do pamięci RAM niż 2 GB, może w przypadku ARM zejdą do 1 GB - co raczej nie jest realne, biorąc pod uwagę historię zasobożerności systemów tej rodziny.
A Raspberry Pi ma 128 lub 256 MB RAM, więcej szkoda pisać....

AvatarUżytkownik jest nieaktywny
SSEE | 06.08.2011 17:53#22

@technician (niezalogowany)
[[[każdy następny Windows ma coraz wyższe minimalne wymagania, szczególnie dotyczy to pamięci RAM.]]]

http://www.neowin.net/news/windows-8-to-have-same-system-requirements-as-windows-7


Btw:
[[[Przeglądam od czasu do czasu ten portal i zauważam dziwną prawidłowość: Kilku użytkowników (...) zachwalają wszystko co, w jakikolwiek sposób jest związane z firmą Microsoft, jest to, swojego rodzaju, fanatyzm, bo nie dostrzegają oczywistych wad prezentowanych rozwiązań - widzą tylko same superlatywy. Każde rozwiązanie na wady i zalety,]]]

Skoro zauważyłeś tę prawidłowość, to zapewne nie umknęła Twojej uwadze inna: wielu użytkowników, którzy rzygają czarnym jadem na wszystko, co ma cokolwiek wspólnego z firmą Microsoft. To także fanatyzm, tylko z odwrotnym biegunem do tego, który zauważyłeś. Taka przypadłość. A jak sam zaznaczyłeś, nie ma rozwiązań bez wad i zalet.

AvatarUżytkownik jest nieaktywny
MSFT :) | 06.08.2011 18:30#23

Oho 0 sami automatycy i robotycy oraz znane autorytety informatyczne się wypowiedzieli :)

@technician
"Wątpię aby Windows 8 miał mniejsze wymagania co do pamięci RAM niż 2 GB,"

Nikt Ci wątpić nie zabroni :)

"Ale .NET nie nadaje się do urządzeń wbudowanych. "
"Nawet 5x większe niż w przypadku programów napisanych w C/C++."

2GB 60zł??

Jak to obliczyłeś te 5 razy? Podaj wzór może?

@RaveStar
"tak jak i na Windows. XP rządzi i przetrwa Windows 8 razem z jego następcą."

Chyba na twoim złomie :)

AvatarUżytkownik jest nieaktywny
przemek1234 | 06.08.2011 19:33#24

Prawda jest taka, że kod natywny jest szybszy od zarządzanego. Sam zebrałem na to dowód pisząc taką oto pętelkę i mierząc czas jej wykonania po skompilowaniu do kodu natywnego i do kodu CIL (używanego do .NET):
double i = 1:
while (i < 1000000000)
{
i = i +1;
}
W natywnym kodzie wykonała się u mnie w ok. 1 sekundę, a w zarządzanym (.NET'owym) w ok. 30 sekund (procesor Intel Core 2 Quad Q6600 2.4 GHz).

AvatarUżytkownik jest nieaktywny
przemek1234 | 06.08.2011 19:37#25

@technician:
Mnie się udało na maszynie wirtualnej uruchomić Windows 7 przy ograniczeniu RAM'u do 96 MB. Co prawda wydajność nie była najlepsza, ale się uruchomił.

AvatarUżytkownik jest nieaktywny
RaveStar | 06.08.2011 20:02#26

@przemek1234
Ludzie z M$landu, coś wam się priorytety pomieszały. To soft ma wykorzystywać 99% zasobów a nie system!

I co z tego, że napiszę lekki program np. kalkulator, jak przez Windowsa całość będzie działać 30 min zamiast 30h?

AvatarUżytkownik jest nieaktywny
matzu | 06.08.2011 20:37#27

@przemek1234
Zastanawiam się jakim cudem u Ciebie to trwa aż 30 sekund. U mnie ta pętelka wykonuje się w 2-3 sekundy (aplikacja konsolowa, .NET Framework 4, wersja oczywiście release, Core 2 Duo 1,6 GHz).

Dodam jeszcze, że takie testy nie mają za dużego sensu, bo .NET nie został stworzony po to, żeby sobie pisać programy wykonujące pojedyncze pętle. No i nie wiem też dlaczego zdecydowałeś się na typ double i pętle while w tym konkretnym teście, ale już mniejsza o to.

AvatarUżytkownik jest nieaktywny
RaveStar | 06.08.2011 21:01#28

@przemek1234
Twój benchmark też nie jest zbyt wiarygodny, bo np. w Javie HS wykryje, że to jakiś junk (zoptymalizuje pętlę) i też się wykona w ułamku sekundy.

Tutaj masz sourca: http://www.artima.com/designtechniques/hotspot3.html

Spróbuj porównać to w C i .NET:
http://pokazywarka.pl/gqh5yx/

AvatarUżytkownik jest nieaktywny
przemek1234 | 06.08.2011 21:39#29

@RaveStar:
Ten twój po po przeportowaniu na C# i C co dziwne wykonuje się szybciej na .NET, chyba że ten C skompiluje się podając GCC (wersja Win32) flagę -O3 (bardzo duża optymalziacja, ale soft działa po niej bardzo niestabilnie).

AvatarUżytkownik jest nieaktywny
RaveStar | 06.08.2011 23:31#30

@przemek1234
Bo widzisz, JVM (Java) i CLR?(.NET) optymalizują kod w locie. W C/C++ wykonuje się taki jaki jest. Dodatkowo w przypadku Javy i .NET wykorzystywane są dodatkowe rdzenie procesora (gdy algorytm optymalizacji "stwierdzi", że da się zrównoleglić pętle).

Jednak nie ma róży bez kolców. O ograniczeniach softu działającego w oparciu o maszyny wirtualne tu:

http://www.youtube.com/watch?v=S54vJOr3pWs

http://www.youtube.com/watch?v=uL2D3qzHtqY

Wszystko zależy od zastosowania.

Jak działa optymalizacja w locie w JVM widać tu:
http://pokazywarka.pl/rozefx/

AvatarUżytkownik jest nieaktywny
Ziendal7 | 07.08.2011 10:57#31

@MSTF
"2GB 60zł??"
No chyba nie w telefonach i mikro urządzeniach, do zegarka chcesz wpakować 2 gb ramu ? Weź ogarnij i pomyśl trochę zanim jakąś bzdurę walniesz.
MSTF znowu fail.

Avatar
revvv (niezalogowany) | 07.08.2011 11:23#32

Jak ostatnio atmel pytał się co sobie ludzie życzą w nowym avr studio to padło że wieloplatformowość i najlepiej oparte o eclipse jak narzędzia innych producentów. To nie olali ludzi i postawili na visual studio co wywołało jęk niezadowolenia.

Avatar
revvv (niezalogowany) | 07.08.2011 11:36#33

już większą ciekawostką jest http://wiki.python.org/moin/PyMite lub java dla atmeg kompilowana do c

Avatar
BioZ (niezalogowany) | 09.09.2011 11:06#34

Witam,

Od dwóch miesięcy ogarniam na praktykach .NET MF i kilka uwag ode mnie:

1. Do szybkiego przejścia od pomysłu do prototypu .NET MF jest dobrym rozwiązaniem. Czy od prototypu do gotowego urządzenia - jak kto woli, jeżeli koszt gotowego układu i napisania programu w C# będzie marginalny w porównaniu z resztą sprzętu, to nie kombinowałbym z pisaniem od zera w C.
2. GHI dodatkowo na swoje płytki (z ARM7 albo ARM9) optymalizuje .NET MF (np. watchdoga) i dodaje dodatkowe biblioteki. .NET Micro Framework jest pisany z zupełnie inną filozofią jak .NET Framework czy nawet .NET Compact Framework. Ludzie tworzący to są świadomi, że ma się do dyspozycji np. procesor taktujący z f=72MHz i ~64kB RAM - choćby z tego powodu masa rzeczy ze standardowego frameworka w MF nie występuje.
3. (@RaveStar i Przemek) Jednak w razie potrzeby posiadania jakiejś funkcji albo jeśli uważamy, że lepiej napiszemy jakąś procedurę, jest możliwość (przynajmniej GHI to umożliwia w swoich układach) pisania kodu w C/Asemblerze, i sami podkreślają, że te procedury mogą działać o wiele szybciej, do 10000 razy - trzeba zatem pewne rzeczy wiedzieć. Mimo, że główną ideą .NET MF jest pisanie w języku obiektowym na urządzenia, to trzeba przy tym myśleć i wiedzieć, w którą stronę iść z rozwiązywaniem problemu.

@Anonim:
"Ale .NET nie nadaje się do urządzeń wbudowanych.
ZA DUŻE ZUŻYCIE RAMU"
Dlatego są jeszcze frameworki .NET Compact i .NET Micro.

Pozdrawiam.

Dodaj komentarz

Zasady publikowania komentarzy
Autor
Treść
 
Polecamy
Testujemy GALAXY NOTE

Czy to tablet z telefonem?
Test Sharp AQUOS SH80F

Warto (byłoby) się szarpnąć
Recenzja MSI WindTop AE2410

Powiew świeżości?
Test: PocketBook Pro 612

Biblioteka w kieszeni
Top programy
  •  
Top programy ostatnie 7 dni
  •  
Top programy ostatnie 30 dni
  •  
Skanery antywirusowe
skaner av