Python ile Arduino Nasıl Programlanır ve Kontrol Edilir

Python ile Arduino Nasıl Programlanır ve Kontrol Edilir

Python, kodlama dünyasını fırtınaya aldı. Bu yeni dilin yükselişinin yanı sıra, kendin yap elektroniği sahnesi de gelişti. Gibi şirketlerden geliştirme panoları ve tek kartlı bilgisayarlar Arduino ve Raspberry Pi, insanların evde demlenmiş elektronikler yaratma şeklini değiştirdi. Bir Arduino'yu Python ile programlayabilmeniz harika olmaz mıydı?





bios olmadan özel video ram nasıl artırılır

İki harika şeyi birleştirmekten daha iyi bir his yoktur. Ne yazık ki, bir Arduino'yu doğrudan Python ile programlamak imkansızdır, çünkü panoların dilin yerleşik yorumu için hiçbir seçeneği yoktur. Ancak mümkün olan, bir Python programı kullanarak USB üzerinden doğrudan kontroldür.





Bu makale, Python programlarını kullanarak komut satırından programlanacak ve kontrol edilecek bir Arduino UNO'nun (Arduino uyumlu herhangi bir kart burada çalışabilir olsa da) nasıl kurulacağını gösterecektir. Bu öğretici, Windows 10 için yazılmıştır, ancak Mac ve Linux için de çalışır. Bu iş akışını, en üst düzeyde ikiye katlamalı DIY deneyimi için bir Arduino'yu doğrudan bir Raspberry Pi'den kontrol etmek için bile kullanabilirsiniz.





Arduino'nuzu Python için Kurma

Bugünkü proje için Python için pyFirmata arayüzü ile birlikte bir Arduino Uno kullanacağız. Bunun için hemen hemen her Arduino uyumlu kartı kullanabilirsiniz, ancak yazarken sadece Arduino Uno, Mega, Due ve Nano pyFfirmata arayüzü tarafından desteklenmektedir. Zaten bir Python gurusuysanız, pyFirmata'ya kendi pano desteğinizi ekleyebilirsiniz - bunu yaparsanız GitHub'larını güncellediğinizden emin olun!

Henüz yapmadıysanız, Arduino IDE'yi kurun. Mikrodenetleyiciler dünyasında tamamen yeniyseniz, Arduino'ya yeni başlayanlar için rehber her şeyi yerine koymanıza yardımcı olacaktır.



Arduino kartınızı bağlayın ve IDE'yi açın. bölümünde doğru kartın ve bağlantı noktasının seçili olduğundan emin olun. Aletler Menü. Yükle StandartFirmata örnek çizin ve tahtaya yükleyin. Bu, bilgisayara USB üzerinden bağlı olduğu sürece Arduino'yu doğrudan kontrol etmenizi sağlayacaktır. Kroki panonuza hatasız olarak yüklenirse, devam etmeye hazırsınız.

Python ve Komut Satırı Kontrolü

Arduino'muzu kontrol etmek için Python 3.4 kullanacağız, çünkü kuracağınız modül bunu en son uyumlu sürüm olarak belirtiyor. Bundan önceki herhangi bir sürüm iyi çalışmalıdır ve sonraki sürümlerin çalıştığı bildirildi. Windows 10 için Python 3.4'ü şu adresten indirebilirsiniz: Python Yazılım Vakfı alan. Python'un birden fazla sürümünü çalıştırmak istiyorsanız Python sanal ortamları kılavuzumuz size yardımcı olabilir.





Python'u kurduktan sonra, onu sisteminizin PATH değişkenine eklemek istiyoruz. Bu, Python kodunu, kurulu olduğu dizinde bulunmaya gerek kalmadan doğrudan Komut Satırından çalıştırmamızı sağlar. Kontrol Paneli , aranıyor Çevre ve üzerine tıklayın Sistem ortamı değişkenlerini düzenleyin . Pencerenin altında seçin Ortam Değişkenleri . Bu, bu pencereyi getirecektir:

zaten görüyorsan YOL listede düzenle'yi tıklayın ve piton ve Python/Komut Dosyaları dizin. PATH değişkeniniz yoksa, yeni'ye tıklayın ve ekleyin. Python'un doğrudan C: Burada. Başka bir yere yüklediyseniz, bunu yansıtmak için değiştirmeniz gerekir. Pencere zincirinde Tamam'ı tıklayın ve Arduino'nuzu Python ile kontrol etmeye neredeyse hazırsınız!





Sihirli Gres

Python'u Arduino'muzla güzelce konuşturmak için yapbozun son bir parçasına ihtiyacınız olacak. Bu, adı verilen bir Python arabirimi biçiminde gelir. pyFirmata . Tino de Bruijn tarafından oluşturulan bu arayüz, indirilebilir github'dan, ancak şunu yazarak doğrudan komut satırından yükleyebilirsiniz:

pip install pyfirmata

Her şey yolunda, yüklemeli ve şöyle görünmelidir:

Başarısız olursa, Python'u eklemeye devam edin. Çevre değişkeni bölümüne gidin ve Python dizininize doğru yolu verdiğinizden emin olun.

Gerçekleştirmek

Artık her şey ayarlandı ve Arduino'nuzun test etmesi için bir Python programı oluşturabilirsiniz. Seçtiğiniz bir IDE açın. kullanacağız tutulma bugün, ancak herhangi bir metin düzenleyiciyi, hatta buluttaki bir IDE'yi kolayca kullanabilirsiniz.

Yeni bir komut dosyası oluşturun ve farklı kaydedin yanıp sönme.py . Standart yanıp sönen LED programı ile geleneği yıkarak, kullanıcıdan LED'in uygulamadan önce kaç kez yanıp sönmesini istediğini soran bir program oluşturacaksınız. yapabileceğiniz kısa bir programdır. buradan indir doğrudan ona ulaşmak istiyorsanız, ama hadi onu parçalayalım.

İlk olarak, ihtiyacınız olanı ithalattan almak isteyeceksiniz. pyFirmata modül, standart Python ile birlikte Zaman modül.

bir program nasıl yönetici olarak çalıştırılır
from pyfirmata import Arduino, util
import time

Şimdi Arduino kartını kurmak isteyeceksiniz. Bu makale, bir Arduino uno kurulu, ancak diğer birkaç Arduino kartı destekleniyor. Kart desteğiyle ilgili ayrıntılar için pyFirmata github'a bakın.

Arduino IDE'de hangi COM portunu kullandığınızı kontrol edin ve değişken olarak kodunuza girin. yazı tahtası .

board = Arduino('COM3')

Şimdi kullanıcı istemini kuracaksınız. Python'a aşina olanlar buradaki her şeyi tanıyacaktır. kullanarak ekrana bir soru yazdırırsınız. giriş işlevi ve yanıtı bir değişken olarak saklayın. Kullanıcı bir numara verdiğinde, program LED'in kaç kez yanıp söneceğini bildirir.

loopTimes = input('How many times would you like the LED to blink: ')
print('Blinking ' + loopTimes + ' times.')

LED'in uygun sayıda yanıp sönmesi için bir döngü için . Eğer sen Python'da yeni , girintiye dikkat edin, diğer dillerden farklı olarak boşluklar sözdiziminin bir parçasıdır. Pin 13'ün Arduino Uno için yerleşik LED olduğunu unutmayın, kartınız farklıysa bunu değiştirmeniz gerekecektir.

for x in range(int(loopTimes)):
board.digital[13].write(1)
time.sleep(0.2)
board.digital[13].write(0)
time.sleep(0.2)

sen atacaksın döngüZaman değişken burada bir tamsayıya dönüştürülür, çünkü kullanıcıdan gelen girdi otomatik olarak bir dize olarak saklanacaktır. Bu basit demoda, kullanıcının sayısal bir değer gireceğini varsayıyoruz. 'Sekiz' gibi herhangi bir başka giriş bir hata verecektir.

Komut dosyanızı kaydedin ve Komut istemi .

Yanıp Sönen Işıklar ve Diğer Vahiyler

Her şey hazır, tek yapmanız gereken komut dosyasının bulunduğu yere gitmek ve onu çalıştırmak. Bunu yazarak yapın cd [betiğin dizinine giden yol] ve sonra yazarak piton yanıp sönme.py .

Her şey yolundayken, programınız Arduino başlatıldığında hafif bir gecikmeyle başlayacak, sizden bir numara isteyecek ve ardından yerleşik LED'i kullanarak bu kadar çok kez yanıp sönecektir.

Program çıktısı şöyle görünmelidir:

Seçtiğiniz yanıp sönme sayısından sonra enter tuşuna basar basmaz, Arduino siparişlerinizi yerine getirmelidir.

Küçük Başlangıçlar

Bu proje, Python ve bir Arduino kartı arasında iletişim kurmak için barebone bir başlangıç ​​oldu. Bu yaklaşım, Arduino'nun kendisine komut dosyası yüklemenin olağan iş akışından çok farklıdır, ancak özellikle Python programlama dilini seviyorsanız, platformla çalışmanın yepyeni bir yolunu açar.

Eğer bir Linux sunucusu evde, Arduino kartlarıyla bu iletişim yöntemi, bu sunucuyu tam teşekküllü bir DIY Ev Otomasyon sistemine genişletebilir. Mikrodenetleyiciyi kontrol eden Python komut dosyalarını bir DIY otomasyon devresi ile birleştirerek, NAS saklama kutunuz yepyeni bir dizi kullanışlı işlevi üstlenebilir.

disk alanı neden 100'de

Nihai Kendin Yap deneyimi yapmak için neden olmasın kendi NAS kutunuzu oluşturun ve aynı zamanda cihazlarınızı kontrol etmek için mi kullanıyorsunuz? Plex sunucunuzda oynat düğmesine basmanın ve ışıkların otomatik olarak kapanmasının ne kadar havalı olacağını hayal edin!

Arduino'yu Python kullanarak zaten kontrol ediyor musunuz? Henüz bilmediğimiz harika geçici çözümler var mı? Aşağıdaki yorum bölümünde bize bildirin!

Paylaş Paylaş Cıvıldamak E-posta VirtualBox Linux Makinelerinizi Güçlendirmek için 5 İpucu

Sanal makinelerin sunduğu düşük performanstan bıktınız mı? İşte VirtualBox performansınızı artırmak için yapmanız gerekenler.

Sonrakini Oku
İlgili konular
  • kendin yap
  • Programlama
  • Arduino
  • Ev otomasyonu
  • piton
Yazar hakkında Ian Buckley(216 Makale Yayınlandı)

Ian Buckley, Berlin, Almanya'da yaşayan serbest gazeteci, müzisyen, sanatçı ve video yapımcısıdır. Yazmadığı veya sahnede olmadığı zamanlarda çılgın bir bilim insanı olma umuduyla kendin yap elektroniği veya koduyla uğraşıyor.

Ian Buckley'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın