THMMY.gr

Ηλεκτρονικοί Υπολογιστές και Τεχνικά Θέματα => Hardware => Topic started by: potirikolonato on March 06, 2016, 17:10:41 pm



Title: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: potirikolonato on March 06, 2016, 17:10:41 pm
Βοήθεια!! Δεν ξέρω τι να επιλέξω.
Προσωπικά με ενδιαφέρουν οι απόψεις κυρίως για να μάθω με τι είναι καλύτερο να ξεκινήσω.

Με ένα γρήγορο google search τα συμπεράσματα που έβγαλα ήταν τα εξής:
1)Και τα δύο είναι αρκετά εύκολα στην εκμάθηση.

2)Το raspberry υπερέχει του arduino σε τεχνικά χαρακτηριστικά(RAM,CPU,usb ports) κατα πολύ.

3)Το raspberry έχει περισσότερες δυνατότητες αφού είναι ενα ολοκληρωμένο συστηματα που μπορεί να φορτωθεί λειτουργικό σύστημα.

4)Το arduino είναι πιο εύκολο στο χειρισμό όσον αφορά αυτοματισμούς (αισθητήρες,leds κ.λ.π.) Με μερικές γραμμές κώδικα λύνεις ένα πρόβλημα που στο raspberry χρειάζεται να φορτώσεις απαραίτητο software.

5)Το arduino είναι plug n play με τις περισσότερες συσκευές ενώ το raspberry μπορει να χρειαστεί βοηθητικό hardware για να ανταπεξέλθει.

6)Η διαφορά κόστους είναι μικρή.

7)Οι δυο συσκευές σε συνδιασμό κάνουν παππάδες.

Αυτά είναι τα βασικά σημεία που ξέρω για τις 2 συσκευές και με ωθούν στο να αγοράσω arduino αλλά μπορεί και να λέω μαλακίες.

Οι απόψεις σας θα με βοηθήσουν.


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: Apostolof on March 06, 2016, 17:47:01 pm
Η σύγκριση των 2 δεν έχει πολύ νόημα γιατί το ένα (arduino) είναι microcontroller ενώ το άλλο είναι single-board computer. Το κάθε ένα προορίζεται για διαφορετικά πράγματα.
Αν θες απλά να ελέγχεις κινητήρες, να παίρνεις μετρήσεις από αισθητήρες κλπ. παίρνεις arduino. (Τα κάνει και το raspberry αλλά είναι overkill)
Αν θες να στήσεις ένα server, να κάνεις οτιδήποτε μεταχειρίζεται κάμερα, μικρόφωνα ή ηχεία παίρνεις raspberry. (Κάποια τα κάνεις και με arduino υποτυπωδώς και με μεγαλύτερη δυσκολία)

6)Η διαφορά κόστους είναι μικρή.

Η διαφορά στη τιμή δεν είναι μικρή. Είναι μικρή αν πάρεις arduino από τους official distributors (το uno στα 20€) και σε σχέση με τα raspberry A,A+,B+ και όχι τα νεότερα boards.
Αλλιώς το arduino ξεκινάει στο ebay (σε αξιόπιστους πωλητές) στα ~3€ (με δωρεάν αποστολή).
Παίρνοντας από το official στηρίζεις τη open-source κοινότητα που τα σχεδιάζει.

Σε single-board computer σε αυτή τη περιοχή τιμών δεν έχεις πολλές επιλογές εκτός από το raspberry νομίζω.
Αλλά σε μικροελεγκτές έχεις πολλές ακόμα επιλογές που αξίζει να ψάξεις όπως Teensy, MSP430 LaunchPad κ.α.


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: rspappas on March 07, 2016, 00:45:54 am
για εκπαιδευτικο για θεματα hardware, μακραν καλυτερη επιλογη ειναι το arduino, σε φερνει πιο κοντα στο machine level στο software, αλλα και πιο κοντα στις λεπτομερειες στο hardware, ενω οπως ειπε και ο apostolof, το raspberry ειναι καλυτερο για software oriented projects.

για αρχαριους, προσωπικα προτεινω arduino κατα προτιμηση σε starter pack (ή εστω με παραλληλη αγορα διαφορων βασικων εξαρτηματων)


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: rspappas on March 07, 2016, 01:11:29 am
δες και εδω (υπαρχει κι αλλο τοπικ σχετικο ;) )
https://www.thmmy.gr/smf/index.php?topic=62491.10


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: kaspas on March 07, 2016, 17:40:06 pm
Έχει αγοράσει κανείς από ebay και αν ναι από ποιον seller; έχει πολλούς και δεν έχω ιδέα από τις διαφορές τους


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: potirikolonato on March 07, 2016, 19:36:32 pm
Ευχαριστώ για τις  πληροφορίες.
Μια ακόμα ερώτηση, διδάσκεται ο τρόπος χρήσης του arduino ή του raspberry στα πλαίσια της σχολής ή είναι
καθαρά σε μας ό,τι θα κάνουμε;


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: Apostolof on March 07, 2016, 19:53:29 pm
Συμφωνώ με rspappas, το arduino είναι η καλύτερη επιλογή για αρχή. Αλλά διαφωνώ με τη πρόταση του για kit starter pack επειδή συνήθως είναι ακριβά για αυτά που προσφέρουν. Εγώ προτείνω να πάρεις το arduino (το uno είναι ότι πρέπει) από τους official distributors (πλέον λέγεται genuino) και ότι άλλο χρειαστείς να το τσιμπήσεις από ebay σε ξεφτίλα τιμές.

Εκτός από τα κλασσικά led και διάφορους κινητήρες και αισθητήρες που παίρνουν όλοι συνήθως στην αρχή, πάρε και κάτι για wireless. Με το ESP8266 έχεις πάμφθηνα (2.48€) wifi για παράδειγμα. Υπάρχουν εξίσου φθηνά modules και για bluetooth κ.α.

@kaspas αυτό που σε νοιάζει είναι ο πωλητής να έχει ταυτόχρονα όσο μεγαλύτερη βαθμολογία από όσο περισσότερους χρήστες γίνετε και να έχει πουλήσει αρκετές φορές το συγκεκριμένο προϊόν.

Δες alice1101983 <3
Αλλιώς καλοί είναι και οι survy2014 και chip_partner. Έχει και άλλους με καλές βαθμολογίες αλλά δεν έχει τύχει να πάρω.


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: kaspas on March 07, 2016, 20:13:52 pm
Δεν μου δέχεται την κάρτα ατιμα capital controls


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: mitsoschelsea on March 07, 2016, 21:01:43 pm
Δοκιμάστε banggood.com (http://banggood.com). Είναι αξιόπιστο έχω αγοράσει αρκετά εξαρτήματα από εκεί. Είναι εκτός paypal, οπότε μπορείς να αγοράσεις άφοβα :)


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: 4Dcube on March 07, 2016, 21:54:40 pm
Η πλατφόρμα arduino είναι κυρίως το "σπίτι" ενός (συνήθως) 8 μπιτου atmel avr μικροεπεξεργαστη, π.χ. atmega328 στο μοντέλο uno.
Στο ΤΗΜΜΥ διδάσκει τους AVR ο κ.Πέτρου στο μάθημα Μικροεπεξεργαστές 1 και 2 του τομέα Ηλεκτρονικής.
Κυρίως το 2 είναι αρκετά πρακτικό και ενδιαφέρον αντικείμενο. Αν ασχοληθείς λίγο με αυτά που πιάνει θα δεις ότι μπορείς να κάνεις τα παντα.

Στο ερώτημα "τι να επιλέξεις" ανάμεσα στον 8μπιτο (απλό) επεξεργαστη ενός arduino όπου μπορείς να γράφεις και assembly και στον 32μπιτο ίσως πολυπύρηνο ARM επεξεργαστή ενός raspberry pi όπου μπορείς να γράφεις πρόγραμμα σε python, δεδομένου ότι αρχιζεις τώρα να ασχολείσαι η προσωπική μου απάντηση είναι - arduino. Χρησιμοποίησε εσυ τις βιβλιοθήκες που έχει το arduino πρώτα και μετά ψάξε στην ύλη του ΤΗΜΜΥ (Μικρο 1 και 2) και στα διάφορα φόρουμ (arduino, avrfreaks) για να καταλάβεις τι είναι αυτά που κάνεις.


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: fasoul on March 07, 2016, 23:42:26 pm
Ευχαριστώ για τις  πληροφορίες.
Μια ακόμα ερώτηση, διδάσκεται ο τρόπος χρήσης του arduino ή του raspberry στα πλαίσια της σχολής ή είναι
καθαρά σε μας ό,τι θα κάνουμε;

Στο μάθημα Δίκτυα Τηλεπικοινωνιών έχει εργαστήριο με αρντουίνο, το οποίο μάλιστα πέρυσι ήταν και αρκετά απαιτητικό.


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: Egkelados on March 08, 2016, 15:56:15 pm
Επειδη και γω ειμαι λογο ασχετος θελω να ρωτησω κατι. Σε τι γλωσσα προγραμματιζεται ενα arduino? Και αν εχει δικια του με ποια μοιαζει?


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: trelonoobaki on March 08, 2016, 16:19:38 pm
C++


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: Egkelados on March 08, 2016, 19:45:44 pm
C++

επειδή το έψαξα λίγο βρήκα στο coursera ένα course που λέγεται The Arduino Platform and C Programming ( εδώ και το link https://www.coursera.org/learn/arduino-platform (https://www.coursera.org/learn/arduino-platform) ) . Μήπως μοιάζει περισσότερο με τη C η γλώσσα που χρησιμοποιεί? Η ας πούμε είτε ξες C ή C++ μπορείς να προγραμματίσεις εξίσου καλά σε arduino?


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: 4Dcube on March 08, 2016, 20:37:55 pm
Στο arduino χρησιμοποιούν avr-gcc compiler. Αυτό σημαίνει ότι από c/c++ , ο compiler φτιάχνει τα δεκαεξαδικά αρχεία που θα κάψει στη μνήμη flash του μικροεπεξεργαστή. Η γλώσσα του arduino είναι ουσιαστικά βιβλιοθήκες (αρχεία .h που κολλάει ο linker κατά τη διαδικασία του build) που έχουν γράψει δημιουργοί για να απλουστέυσουν την embedded c που χρειάζονται οι avr.
Απλά στους avr η αρχιτεκτονική του επεξεργαστή (harvard) είναι διαφορετική από αυτή ενός συνηθισμένου επεξεργαστή στο PC μας (von newmann). Αυτό εισάγει κάποιους περιορισμούς στη διαχείριση της μνήμης για αυτόν που γράφει τον κώδικα αλλά έχει πάρα πολύ καλή απόδοση στους χρόνους απόκρισης των προγραμμάτων.

PS ...and welcome to 20 years ago :P


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: Grecs on March 10, 2016, 16:40:38 pm
 Βασικα η ερωτηση ειναι τι ετος εισαι? Κατα ποιον τομεα βλεπεις να πηγαινεις? Και τι θες να κανεις??


 Γνωμη μου ο arduinos ειναι για πληροφορικαριους που δεν εχουν ιδεα απο hardware και απλα ειναι μια απλοποιημενη φαση για να μπορει να την παλεψει ο καθενας που ξερει να γραφει 5 γραμμες κωδικα κανοντας μια απλη κατασκευη. Για να μαθεις οντας ανιδεος ειναι καλη φαση, αλλα θα μαθεις κατι τερμα επιφανειακα. Καποιος που εχει βγαλει την σχολη και εχει παρει τα μαθηματα του πετρου δεν βλεπω τον λογο να μην γραψει ειτε σε κανονικη embedded C ή σε assembly αν γουσταρει. Η διαφορα του να γραφεις σε arduino C και κανονικη embedded C ή assembly  ειναι μερα με την νυχτα, οσο αφορα το performance και τις δυνατοτητες και οσο αφορα το ποση καλη γνωση εχεις για το πως δουλευει το ρημαδι ο μικροεπεξεργαστης.

 Για το Rasberry ισχυουν πανω κατω τα ιδια, απλα το Rasberry εχει καλο performance για αυτο που ειναι και θα το χρησιμοποιουσα για μια απαιτητικη εφαρμογη. Οπως ειπανε οι παραπανω ειναι ενα αρτιο υπολογιστικο συστημα με πολλα περιφερειακα και δυνατοτητες το οποιο ειναι για πιο βαριες και πιο upper-level δουλειες.

 Προσωπικα εχω δουλεψει επαγγελματικα με arduino και εχω κανει και cross-platform εφαρμογη με Rasberry PI και Arduino μαζι, ειναι να απορεις με την ασχετοσυνη που υπαρχει εκει εξω. Επειδη ειναι της μοδος το arduino πολλοι νομιζουν οτι ειναι το ιερο δισκοποτηρο του hardware, ενω απλα ειναι μια εισαγωγη στο hardware για ατομα που ξερουν απλως να γραφουν κωδικα.


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: PanosM on March 10, 2016, 17:46:40 pm
Βασικα η ερωτηση ειναι τι ετος εισαι? Κατα ποιον τομεα βλεπεις να πηγαινεις? Και τι θες να κανεις??


 Γνωμη μου ο arduinos ειναι για πληροφορικαριους που δεν εχουν ιδεα απο hardware και απλα ειναι μια απλοποιημενη φαση για να μπορει να την παλεψει ο καθενας που ξερει να γραφει 5 γραμμες κωδικα κανοντας μια απλη κατασκευη. Για να μαθεις οντας ανιδεος ειναι καλη φαση, αλλα θα μαθεις κατι τερμα επιφανειακα. Καποιος που εχει βγαλει την σχολη και εχει παρει τα μαθηματα του πετρου δεν βλεπω τον λογο να μην γραψει ειτε σε κανονικη embedded C ή σε assembly αν γουσταρει. Η διαφορα του να γραφεις σε arduino C και κανονικη embedded C ή assembly  ειναι μερα με την νυχτα, οσο αφορα το performance και τις δυνατοτητες και οσο αφορα το ποση καλη γνωση εχεις για το πως δουλευει το ρημαδι ο μικροεπεξεργαστης.

 Για το Rasberry ισχυουν πανω κατω τα ιδια, απλα το Rasberry εχει καλο performance για αυτο που ειναι και θα το χρησιμοποιουσα για μια απαιτητικη εφαρμογη. Οπως ειπανε οι παραπανω ειναι ενα αρτιο υπολογιστικο συστημα με πολλα περιφερειακα και δυνατοτητες το οποιο ειναι για πιο βαριες και πιο upper-level δουλειες.

 Προσωπικα εχω δουλεψει επαγγελματικα με arduino και εχω κανει και cross-platform εφαρμογη με Rasberry PI και Arduino μαζι, ειναι να απορεις με την ασχετοσυνη που υπαρχει εκει εξω. Επειδη ειναι της μοδος το arduino πολλοι νομιζουν οτι ειναι το ιερο δισκοποτηρο του hardware, ενω απλα ειναι μια εισαγωγη στο hardware για ατομα που ξερουν απλως να γραφουν κωδικα.

+1

Πάρτε κανα launchpad απο Τexas Instruments ή κάνα Nucleo της STM (το οποίο μάλιστα έχει και υποστήριξη για τα shields του Arduino). Είναι φθηνά και φοράν επεξεργαστή ARM Cortex M4F. Γράφεις σε embedded C και κάνεις παπάδες!

PS: Επίσης συγκεκριμένα για τν ΤΙ έχω να πω ότι έχει και γαμώ τα documentations.


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: potirikolonato on March 10, 2016, 18:06:51 pm
Βασικα η ερωτηση ειναι τι ετος εισαι? Κατα ποιον τομεα βλεπεις να πηγαινεις? Και τι θες να κανεις??

Και εγώ και ο Egkelados πρωτοετής είμαστε που απλά ψαχνόμαστε. Τώρα όσον αφορά τομέα, χωρίς να θέλω να πω μεγάλες κουβέντες, προς ηλεκτρονική το κόβω. Το τι θέλω να κάνω είναι ακριβώς αυτό.
μια εισαγωγη στο hardware για ατομα που ξερουν απλως να γραφουν κωδικα.
Ούτε απο hardware ξέρω, ουτε σπουδαία πράγματα για προγραμματισμό, οπότε παρά το rage για τη θεοποίηση του arduino φαίνεται να είναι μια καλή λυση  :P :P  ;D ;D ;D


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: Grecs on March 10, 2016, 18:28:02 pm
Αφου εισαι πρωτοετης καλο ειναι για σενα. Απλα να ξερεις οτι ειναι μια εισαγωγη και οχι το real thing, αν πας ηλεκτρονικη θα το καταλαβεις στα τελευταια ετη. Το rage εχει να κανει με καταστασεις οπου προσπαθουσα να πεισω "επαγγελματιες" οτι ο arduino ειναι μονο για εκπαιδευτικους σκοπους και οχι για να στησεις ενα επαγγελματικο συστημα (οχι οτι δεν γινεται απλα ο λογος performance/cost ειναι ο,τι χειροτερο).


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: 4Dcube on March 10, 2016, 19:34:40 pm
@asassin, egkelados
Ως μηχανικός πρέπει να ξέρεις τι επιλέγεις και γιατί το επιλέγεις. Αν μπορείς να απαντάς συνέχεια στην απάντηση "γιατί" μέχρι μια ικανοποιητική απλούστευση, είσαι σε σωστό δρόμο προς τον επαγγελματισμό και θα πείθονται για τις επιλογές σου οι πάντες γιατί μιλάς με ωμή πραγματικότητα.

Είναι πολύ δύσκολο να συνεχίζεις να κάνεις αυτή τη διαδικασία και εύκολο να την ξεχνάς επειδή δε βολεύουν κανέναν οι αντιρρήσεις και αμφισβητίσεις. Ιδιαίτερα που εδώ στο Ελληναριό δεν υπάρχει οργάνωση ούτε και επαγγελματικά. Αν κάνεις αυτη τη διαδικασία που λέγετα "καθορισμός απαιτησεων/προδιαγραφών", θα ξεχωρίζεις.
Στο εξωτερικό χρησιμοποιούν το φορμαλισμό προγραμμάτων για αυτή τη δουλειά, εμείς εδώ είμαστε τόσο γαμάτοι μου τα ψυλλιαζόμαστε.


Πάντως, η παγκόσμια αγορά τελευταία ξαναγυρίζει σε 8μπιτους επεξεργαστές λόγω χαμηλού κόστους, χαμηλής κατανάλωσης και μεγάης πολυπραγμοσύνης.

Τέλος, το arduino είναι αυτό που πιάνεις στα χέρια. Είναι απλά μια πλατφόρμα προγραμματισμού του μικροεπεξεργαστή όπου δοκιμάζεις τα πρωτότυπα των κατασκευών που φτιάχνεις. Τον μικροεπεξεργαστή που πατάει πάνω στην πλατφόρμα arduino μπορείς να τον προγραμματίσεις σε c, c++ και assembly. Η "γλώσσα arduino" που αναφέρετουν, είναι πάλι c. Μπορείς να μη χρησιμοποιείς το loop(){} και να γράψεις #include<avr/io.h> όπου περιλαμβάνεις τις βιβλιοθήκες του avr και να γράψεις τη int main(){} που έχει τις άπειρες δυνατότητες της c. --> ένα παράδειγμα


Title: Re: Arduino vs Raspberry (Τι να επιλέξω;)
Post by: PanosM on March 10, 2016, 20:33:42 pm


Πάντως, η παγκόσμια αγορά τελευταία ξαναγυρίζει σε 8μπιτους επεξεργαστές λόγω χαμηλού κόστους, χαμηλής κατανάλωσης και μεγάης πολυπραγμοσύνης.


Σωστός ο 4Dcube. Σ'αυτήν την κατεύθυνση οδηγεί και το hype που υπάρχει γύρω από το IoT (Internet of Things). Σ' αυτές τις εφαρμογές που κύριος παράγοντας είναι το low power consumption (αρα και χαμηλή συχνότητα ρολογιού) και το connectivity και οχι τόσο το performance (εξαρτάται και από την εφαρμογή βέβαια, αλλά προς στιγμήν οι περισσότερες εφαρμογές IoT είναι λήψη μετρήσεων από αισθητήρες και αποστολή με κάποιο πρωτόκολλο επικοινωνίας), οι 8bit MCUs προτιμούνται από κάποιον 32bit.

Γενικά όπως αναφέρθηκε το θέμα είναι να μπορείς ως μηχανικός να επιλέξεις αυτό που είναι πιο συμφέρον για σένα από άποψη μάθησης, κόστους, απόδοσης, πολυπλοκότητας κ.λ.π. Το Αrduino είναι μια πολύ καλή επιλογή για κάποιον που μόλις τώρα ξεκινάει να ασχολείται, καθώς το learning curve δεν είναι τόσο "απότομο" σε σχέση με άλλες πλατφόρμες μικροελεγκτών. Έχεί γενικά πολύ καλό community και πληθώρα από resources και επόμενως είναι πολύ εύκολο αν έχεις μια ιδέα να περάσεις γρήγορα στην φάση του prototyping.

Eπίσης όπως ανέφερε και ο 4Dcube, το Αrduino είναι ουσιαστικά ,όσο αφόρα τν προγραμματισμό, βιβλιοθήκες οι οποίες απλώς προσφέρουν ένα επίπεδο αφαιρετικότητας. Δεν υπάρχει όμως κανένας περιορισμός και για τους έμπειρους χρήστες, οι οποίοι μπορούν απλά να αγνοήσουν τις βιβλιοθήκες του arduino και να γράψουν σε plain avr-c.

Απλά καλό είναι γι αυτούς που ήδη έχουν κάποια επαφή με το αντικείμενο ή θέλουν να το πάνε λίγο παραπέρα να γνωρίζουν και για άλλες εναλλακτικές επιλογές, οι οποίες είναι πιο σύμφερουσες και από άποψη κόστους και άπο άποψη απόδοσης.

Όπως και να έχει εγω εν μέρει κατανοώ την κατ'εμέ υψηλή τιμή του οfficial Arduino board. Μην ξεχνάμε ότι δεν είναι και καμιά εταιρεία κολοσσός όπως π.χ TI που να έχει κονέ με εταιρείες foundries να κάνει μαζική παραγωγή και άρα να μπορεί να ρίξει το κόστος. Βέβαια σίγουρα εκμεταλλεύονται και το γενικότερο hype που υπάρχει γύρω από το Arduino.

Μπράβο πάντως που απόφασισες να ασχοληθείς από το 1ο έτος! Θα αποκτήσεις μια καλή βάση, ωστέ αργότερα αν το επιθυμείς να το πας και παραπέρα. Και αν πας Ηλεκτρονική, στα ΜΙΚΡΟ θα μάθεις avr assembly, οπότε θα μπορείς να προγραμματίσεις σε avr assembly στο Αrduino που θα έχεις ήδη.