How to Control Your Actuators from Alternative Networks

Πώς να ελέγξετε τους Ενεργοποιητές μας από εναλλακτικά δίκτυα

Guest Writer
Guest Writer
PA Engineer

Ο κόσμος της γραμμικής κίνησης εξελίσσεται ταχύτατα και συνεχώς. Η Progressive Automations είναι αποφασισμένη να παραμείνει στην πρωτοπορία αυτών των τεχνολογικών αλλαγών. Οι τηλεχειριζόμενοι ενεργοποιητές έχουν γίνει πιο ποικιλόμορφοι και δυναμικοί. Με αυτό κατά νου, ένας από τους μηχανικούς μας, ο Jake, αποφάσισε να πραγματοποιήσει ένα πείραμα για να διαπιστώσει αν οι γραμμικοί ενεργοποιητές μας μπορούν να ελεγχθούν από εναλλακτικά δίκτυα. Αυτό είναι πράγματι εφικτό. Έτσι, αυτό το άρθρο θα προσφέρει έναν οδηγό βήμα προς βήμα για το πώς μπορεί να επιτευχθεί. Περιλαμβάνει επίσης ένα παράδειγμα κώδικα και τα εργαλεία που θα χρειαστούν για να δημιουργηθεί μια επιτυχημένη σύνδεση και, τελικά, να ελεγχθεί ο/οι ενεργοποιητής/-ές online.

Χρησιμοποιήσαμε τον PA-14 Mini Γραμμικό ενεργοποιητή για αυτό το πείραμα, καθώς είναι ένας από τους πιο δημοφιλείς ενεργοποιητές μας!

Κάντε κλικ εδώ

Λίστα προϊόντων

 

PA-14 Mini Γραμμικός ενεργοποιητής

     

    Mini Γραμμικός ενεργοποιητής από την Progressive Automations

     

    Το LC-201 είναι μια πλακέτα ρελέ 4 καναλιών, ιδανική για αυτήν την εφαρμογή!

    Κάντε κλικ εδώ

     

    Ο PA-14 Mini Γραμμικός ενεργοποιητής είναι ένα από τα πιο δημοφιλή μοντέλα που προσφέρει η Progressive Automations και το παράδειγμα που χρησιμοποιήσαμε για αυτό το πείραμα. Οποιοδήποτε μοντέλο της Progressive Automations με ονομαστική τάση 12VDC/24VDC/36VDC/48VDC και βουρτσιστό κινητήρα DC μπορεί να χρησιμοποιηθεί αντί του ενεργοποιητή PA-14. Ο παρεχόμενος κώδικας που παρουσιάζεται παρακάτω δεν θα χρειαστεί τροποποιήσεις αν επιλεγεί διαφορετικός ενεργοποιητής, αλλά θα πρέπει να ελεγχθούν οι ονομαστικές τιμές Ρεύματος και τάσης του τροφοδοτικού πριν προχωρήσετε.

    Ο νέος και βελτιωμένος PA-01 mini ενεργοποιητής (αναβάθμιση PA-14) είναι το τρέχον μοντέλο που προσφέρουμε με μια σειρά πρόσθετων πλεονεκτημάτων. Για σύγκριση, ρίξτε μια ματιά στους παρακάτω πίνακες και αναβαθμίστε με σιγουριά!

     

    PA-01

    PA-14

    Επιλογές δυναμικού Φορτίου

    16, 28, 56, 112, 169, 225 lbs

    35, 50, 75, 110, 150 lbs

    Μέγιστο Φορτίο

    225 lbs

    150 lbs

    Ταχύτερη Ταχύτητα

    3.54 "/sec

    2.00"/sec

    Βαθμός προστασίας IP

    IP65

    IP54

    Επιλογές Διαδρομής

    1" έως 40"

    1" έως 40"

    Ανάδραση φαινομένου Hall

    Προαιρετικό

    Όχι

    Γραμμικός ενεργοποιητής για Raspberry Pi

    Οι λεπτομέρειες του πειράματος που παρέχονται εξηγούν πώς να ελέγξετε έναν Γραμμικό ενεργοποιητή με ένα Raspberry Pi. Το Raspberry Pi 4 χρησιμοποιείται για να τρέχει το λογισμικό του server και να λαμβάνει εντολές για τον έλεγχο του ενεργοποιητή. Εναλλακτικά, μπορείτε να χρησιμοποιήσετε έναν επιτραπέζιο υπολογιστή και μια πλακέτα Arduino. Αν επιλέξετε αυτήν τη διαδρομή, ο υπολογιστής σας θα πρέπει να λαμβάνει εντολές και να τις επικοινωνεί στην πλακέτα Arduino μέσω σειριακής θύρας.

    Το Raspberry Pi είναι ένας υπολογιστής μίας πλακέτας, περίπου στο μέγεθος μιας πιστωτικής κάρτας. Αυτός ο μικροϋπολογιστής αναπτύχθηκε στο Ηνωμένο Βασίλειο για διδασκαλία βασικών γνώσεων υπολογιστών.

     

    Αρχή λειτουργίας του Raspberry Pi

    Το Raspberry Pi διαθέτει όλα τα χαρακτηριστικά ενός πραγματικού υπολογιστή, όπως αποκλειστικό επεξεργαστή, μνήμη και οδηγό γραφικών για έξοδο HDMI. Τρέχει ακόμη και μια ειδική έκδοση του λειτουργικού συστήματος Linux. Αυτό κάνει εύκολη την εγκατάσταση των περισσότερων προγραμμάτων Linux και τη σύνδεση Γραμμικών ενεργοποιητών στο Raspberry Pi. Έτσι, το Raspberry Pi μπορεί να χρησιμοποιηθεί για ενεργοποιητές, ως πλήρης media server ή ως εξομοιωτής βιντεοπαιχνιδιών.

    Δεν υπάρχει εσωτερικός χώρος αποθήκευσης δεδομένων στο Pi, αλλά μπορεί να χρησιμοποιηθεί μια κάρτα μνήμης ως flash μνήμη για ολόκληρο το σύστημα. Αυτό επιτρέπει τη γρήγορη λήψη διαφορετικών εκδόσεων του λειτουργικού συστήματος ή ενημερώσεων λογισμικού για αποσφαλμάτωση. Καθώς η συσκευή παρέχει ανεξάρτητη συνδεσιμότητα μέσω δικτύου, μπορεί επίσης να ρυθμιστεί για πρόσβαση SSH ή μεταφορά αρχείων μέσω FTP.

     

    Οδηγίες για το πείραμα

    Τα παρακάτω παρουσιάζουν τα ακριβή βήματα που ακολούθησε ο Jake κατά τη δοκιμή αυτού του setup, από την αρχική ρύθμιση έως τον ασύρματο τηλεχειρισμό του Γραμμικού ενεργοποιητή.

    Δεδομένου ότι στην πλακέτα Raspberry Pi μπορεί να εκχωρηθεί διεύθυνση IP και διαθέτει ακίδες GPIO, μαζί με τις προαναφερθείσες λειτουργίες, αποτελεί την καλύτερη συσκευή για ένα τέτοιο πείραμα.

    Ρύθμιση Raspberry Pi με Γραμμικό ενεργοποιητή

    1. Βεβαιωθείτε ότι το λειτουργικό σύστημα Raspbian είναι εγκατεστημένο στο Pi σας. Κάντε κλικ εδώ για αναλυτικές οδηγίες εγκατάστασης του λειτουργικού στο Pi σας.
    2. Συνδέστε την πλακέτα σας στο Wi‑Fi. Κάντε κλικ εδώ για αυτές τις οδηγίες.
    3. Αναθέστε στατική IP στο Raspberry Pi σας. Κάντε κλικ εδώ για λεπτομέρειες σχετικά με το πώς γίνεται.
    4. Δημιουργήστε ένα νέο αρχείο .py στο Raspberry Pi σας και αντιγράψτε τον παρακάτω κώδικα σε αυτό. Όταν τον εκτελέσετε, το Pi σας θα γίνει server που «ακούει» τις εντολές σας στη θύρα «6166».

     

     import socket
    	import sys
    
    	# Δημιουργία υποδοχής (socket) TCP/IP
    	sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    
    	# Δέσμευση της υποδοχής στη θύρα
    	server_address = ('', 6166)
    	print ('εκκίνηση στη θύρα ', server_address)
    	sock.bind(server_address)
    
    	# Ακρόαση για εισερχόμενες συνδέσεις
    	sock.listen(True)
    
    
    	GPIO.setmode(GPIO.BCM)
    	GPIO.setup(18, GPIO.OUT)
    	GPIO.setup(27, GPIO.OUT)
    
    	while (True):
        		# Αναμονή για σύνδεση
        		print ('αναμονή για σύνδεση')
        		connection, client_address = sock.accept()
    
        		print ('σύνδεση από', client_address)
    
        		# Λήψη δεδομένων σε μικρά τμήματα και επαναμετάδοση
            	data = connection.recv(16)
            	 	print ("ελήφθη:", data)
            	
    		# Σήμα εξόδου στα GPIO ανάλογα με την εντολή
    		if data == b"ext":
                		GPIO.output(18, GPIO.HIGH)
            	if data == b"ret":
                		GPIO.output(27, GPIO.HIGH)
            	
    		if data == b"close connection":
    			break
    
        	 # Κλείσιμο της σύνδεσης
        	 connection.close() 

    Καλωδίωση

    Για σαφείς οδηγίες σχετικά με την καλωδίωση αυτού του project, διατίθεται διάγραμμα στον ακόλουθο σύνδεσμο: 4-Channel Digital Relay + Arduino καλωδίωση Γραμμικού ενεργοποιητή.

     

    Ρύθμιση δρομολογητή (Router)

    Αφού το Pi σας συνδεθεί στο Wi‑Fi και έχει στατική IP όπως ρυθμίσατε στο προηγούμενο βήμα, μπορείτε να ξεκινήσετε τη ρύθμιση προώθησης θυρών (port forwarding) και φιλτραρίσματος IP στο router σας. Η προώθηση θυρών σάς επιτρέπει να ρυθμίσετε έναν δρομολογητή ώστε να προωθεί δεδομένα που έρχονται σε συγκεκριμένη θύρα σε μια συσκευή του LAN σας. Ας υποθέσουμε ότι ο Pi server σας έχει στατική IP 192.168.1.69 και «ακούει» εντολές στη θύρα 6166. Θα χρειαστεί να ρυθμίσετε το router σας έτσι ώστε τα δεδομένα που έρχονται στη θύρα 6166 να προωθούνται σε συσκευή με IP 192.168.1.69.

    Οδηγίες:

    Σημείωση: Η διεπαφή του router σας μπορεί να διαφέρει από το παράδειγμα. Σε αυτήν την περίπτωση, αναζητήστε οδηγίες για το συγκεκριμένο μοντέλο σας.


        1. Εισαγάγετε τη διεύθυνση IP του router σας και συνδεθείτε για πρόσβαση στη διεπαφή του.

           

          Διεύθυνση IP
        2. Βρείτε την επιλογή Port Forwarding.

           

          Εύρεση της προώθησης θυρών

     

        1. Εισαγάγετε τη στατική IP του Pi server σας και το εύρος Δημόσιων Θυρών. Βεβαιωθείτε ότι η θύρα 6166 περιλαμβάνεται σε αυτό το εύρος.

           

          Εύρος Δημόσιων Θυρών

    Συστήνουμε, για λόγους ασφαλείας, να ρυθμίσετε φιλτράρισμα IP σε αυτό το σημείο. Το φιλτράρισμα IP σάς επιτρέπει να ορίσετε τις διευθύνσεις IP των συσκευών που επιτρέπεται να έχουν πρόσβαση στο Pi σας μέσω Internet και να στέλνουν εντολές. Βρείτε τη ρύθμιση για εισερχόμενα φίλτρα (inbound filters) και ορίστε εκεί τις IP των συσκευών που επιτρέπεται να έχουν πρόσβαση στον/στους ενεργοποιητή/-ές.

    Ρύθμιση πελάτη (Client)

        1. Για να εκτελέσετε το λογισμικό πελάτη στη συσκευή σας, εγκαταστήστε την Python 3.8 από την επίσημη ιστοσελίδα.
        2. Ίσως θελήσετε επίσης να εγκαταστήσετε το PyCharm, ένα εύχρηστο IDE.
        3. Αντιγράψτε τον ακόλουθο κώδικα:
    import socket
    import sys
    
    # Δημιουργία υποδοχής (socket) TCP/IP
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    
    # Σύνδεση της υποδοχής στη θύρα όπου «ακούει» ο server
    server_address = ('Enter IP address of router in your pi’s LAN', 6166)
    print ('σύνδεση στο %s port', server_address)
    sock.connect(server_address)
    
    try:
    
        # Αποστολή δεδομένων
        message = b'ret'
        print ('αποστολή "%s"',message)
        sock.sendall(message)
    
        # Αναζήτηση απάντησης
        amount_received = 0
        amount_expected = len(message)
    
        while amount_received < amount_expected:
            data = sock.recv(16)
            amount_received += len(data)
            print ('ελήφθη: ', data)
    
    finally:
        print ('κλείσιμο socket')
        sock.close()


     

    Όλοι οι ενεργοποιητές χρειάζονται ένα αξιόπιστο τροφοδοτικό - εδώ χρησιμοποιήσαμε το PS-20-12!

    Κάντε κλικ εδώ

    Το Raspberry Pi έναντι του Arduino

    Όπως αναφέρθηκε στην αρχή του άρθρου, είναι εφικτό να χρησιμοποιηθεί μια πλακέτα Arduino αντί για Raspberry Pi. Πρώτα, είναι σημαντικό να σημειωθεί τι είναι οι πλακέτες Arduino. Αυτοί οι μικροελεγκτές εκτελούν κώδικες που ερμηνεύονται από το firmware. Δεν είναι πλήρεις υπολογιστές και, συνεπώς, δεν διαθέτουν λειτουργικό σύστημα με την αυστηρή έννοια. Μπορεί να μην έχετε τα βασικά εργαλεία που προσφέρει ένα λειτουργικό, αλλά διευκολύνουν την απευθείας εκτέλεση απλού κώδικα.

    Δεν υπάρχουν επίσης κόστη συνδεδεμένα με αυτό το «λειτουργικό». Ο κύριος σκοπός της πλακέτας Arduino είναι να αλληλεπιδρά με αισθητήρες και συσκευές, κάτι που καθιστά το Arduino εξαιρετικό για έργα hardware που στοχεύουν στην απόκριση σε διαφορετικά σήματα αισθητήρων και χειροκίνητες εισόδους. Είναι ιδανικό για τον έλεγχο άλλων συσκευών και ενεργοποιητών, όπου ένα πλήρως εξοπλισμένο λειτουργικό σύστημα δεν είναι απαραίτητο.

    Η επιλογή μεταξύ Raspberry Pi και Arduino εξαρτάται σε μεγάλο βαθμό από το έργο για το οποίο απαιτείται.

    Θα ήταν προτιμότερο να επιλέξετε το Arduino αν η βασική σας εργασία είναι η ανάγνωση δεδομένων από αισθητήρες ή η αλλαγή τιμών στον κινητήρα και σε άλλες συσκευές. Δεδομένων των απαιτήσεων της τροφοδοσίας του Arduino και της ευκολίας συντήρησης αυτού του συστήματος, η συσκευή μπορεί να λειτουργεί χωρίς τερματισμό, με ελάχιστη έως μηδενική παρέμβαση στη λειτουργία της.

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

    Δεδομένου ότι Arduino και Raspberry Pi επιλύουν διαφορετικές εργασίες, σε ορισμένες περιπτώσεις είναι βολικό να χρησιμοποιούνται μαζί. Συνδέοντάς τα, μπορείτε να έχετε πρόσβαση σε ρυθμίσεις και κώδικα μέσω του Pi, ενώ το Arduino ελέγχει τους ενεργοποιητές και συλλέγει πληροφορίες από τους αισθητήρες. Αυτές οι δύο συσκευές μπορούν να συνδεθούν μέσω USB, LAN ή με σύνδεση των θυρών I/O του Arduino στο Raspberry Pi.

     

    Επίλογος

    Σε αυτό το σημείο, όλα είναι ρυθμισμένα ώστε να ελέγχετε οποιονδήποτε ενεργοποιητή που πληροί τα κριτήρια της Progressive Automations μέσω Internet! Εκτελώντας τον κώδικα, αποκτάτε την απόλυτη ευκολία να ελέγχετε τους ενεργοποιητές σας απομακρυσμένα, ή όπως μας αρέσει να τους αποκαλούμε, «ενεργοποιητές που ελέγχονται μέσω Wi‑Fi». Ευχαριστούμε που διαβάσατε αυτό το άρθρο – αν έχετε οποιαδήποτε απορία ή αν θέλετε να δείτε κάτι να το δοκιμάζει κάποιος από τους μηχανικούς μας, επικοινωνήστε μαζί μας και θα χαρούμε να έρθουμε σε επαφή μαζί σας!