İçindekiler:
- Adım 1: Raspberry Pi'yi Hazırlayın
- Adım 2: Arduino'dan Veri Toplamak İçin Basit Örnek Hazırlayın
- Adım 3: Fişi Çıkarıp Gücü RPI'ye Takarak RPi'yi Önyükleyin. VNCViewer'ı Başlatın, RPi'nize Giriş Yapın
- Adım 4: Klasörü Paylaşmak için Samba'yı Kurun
- Adım 5: Faydalı Referanslar
Video: Arduino'dan Veri Kaydetmek İçin Sıfırdan Bir Raspberry Pi Kurulumu: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Bu eğitim, Python veya Linux bir yana, yeni bir donanım veya yazılım kurma konusunda deneyimi olmayanlar içindir.
Diyelim ki SD kart (en az 8GB, ben 16GB, tip I kullandım) ve güç kaynağı (5V, en az 2.5A) ile Raspberry Pi (RPi) sipariş ettiniz. Bugün, onu kurmaya ve Arduinos'tan veri kaydetmeye karar verdiniz. Öyleyse başlayalım!
Eğitim, Desktop Remote dahil olmak üzere baştan itibaren Raspberry Pi'yi kurmayı, 18B20 sıcaklık sensörlü bir Arduino hazırlamayı ve verileri toplamak ve kaydetmek için Raspberry Pi'de bir Python betiği yürütmeyi içerir. Dosyayı ana bilgisayar (PC'niz) ile Raspberry Pi arasında aktarmak için samba paylaşımı ekleyerek gönderiyi güncelledim.
Adım 1: Raspberry Pi'yi Hazırlayın
- RPI için işletim sistemini indirin. Raspbian'ın tam sürümünü tavsiye ederim, buradaki gibi.
- Windows üzerinde çalışan bir bilgisayarınız olduğunu varsayalım, görüntüyü SD karta yazmak için Rufus yazılımını indirin. Aşağı kaydırın ve rufus 3.0'ı edinin (Haziran 2018)
- Raspbian dosyasını (4.6 GB) açın ve hedef SD kartınızı dikkatlice seçin. Görüntünün karta yazılması yaklaşık 3 dakika sürer.
- SD kartı yuvaya takın, güç kablosunu mikro USB bağlantı noktasına takın, HDMI kablolu bir Ekran, klavye, fare isteğe bağlıdır.
- RPi açılıncaya kadar bekleyin ve masaüstünü gösterin, Pencere tuşuna basın, Donatılar/Terminal'e gidin ve Enter'a basın.
- RPi'yi türe göre yapılandırın:
sudo raspi yapılandırması
7. RPI yapılandırmasında birkaç şeyi değiştirin:
- 1. Şifreyi değiştir
- 2. Ağ Seçeneğinde: Ana bilgisayar adını (benzersiz bir şey, benimki rpi1001) ve wifi SSID ve şifresini değiştirin.
- 4. Konumlandırma Seçeneklerinde: Saat Dilimi, Klavye, yerel ayarı değiştirin
- 5. Arayüz Seçeneklerinde: SSH'yi Etkinleştir (komut satırı aracılığıyla oturum açmak için), VNC'yi Etkinleştir (masaüstü uzaktan kumandası için)
- 7'de: Gelişmiş Seçenek: Dosya Sistemlerini Genişletin:
- yeniden başlat
- Önyüklemeden sonra: çalıştırarak IP adresini not edin
sudo ifconfig
Ethernet kullanılıyorsa, IP ilk blok olmalıdır, Wifi kullanılıyorsa IP üçüncü blokta, 192.168.1.40, Linux dağıtımını güncellemek için bu komutu çalıştırın:
sudo apt-get update && sudo apt-get upgrade –y && sudo poweroff
Sonuncusu, güncellemeleri yaptıktan sonra RPi'yi kapatacak
8. RPi'nin IP'sini unuttuysanız veya yakın zamanda değiştiyse, PowerShell'i kullanın (Windows'ta arama kutusuna PowerShell yazın)
PowerShell'de Rpi'ye ping atmak için: ping rpi1001.local –4 192.168.1.40 gibi bir şey elde edin. rpi1001, Rpi'm için ana bilgisayar adımdır.
9. VNCViewer'ı yükleyin, bu yazılım Windows'ta TeamViewer veya Desktop Remote gibi çalışır (yalnızca Win 10 Pro'da Desktop Remote özelliği vardır).
Windows makinenize yükleyin, VNCViewer'ın üstündeki arama kutusuna RPi'nin IP'sini (192.168.1.40) veya RPi'nin ana bilgisayar adını (benimki rpi1001.local) yazın ve Enter'a basın. Adınızı RPi'nin şifresini girin, isterseniz 'Şifreyi hatırla'yı seçin. Her şey yolunda giderse, açılır Rpi masaüstünü görmelisiniz.
10. TeamView'den veya TeamView'e dosya aktarmak için, VNCView tarafından yerleşik dosya aktarımını kullanmanın en basit yolu:
Ve bu, sizin için veri toplamak için bir Ahududu kullanabilir ve gerektiğinde veri almak için oturum açabilirsiniz.
Adım 2: Arduino'dan Veri Toplamak İçin Basit Örnek Hazırlayın
Diyelim ki 4 sensörden sıcaklık almak istiyorsunuz. Bu örnekte, popüler bir sıcaklık sensörü olan 18B20'yi kullandım. Diğer seçenekler, TMP35, 36 ailesi veya bir termistördür.
Kablolama yukarıda dahildir. 18B20'ler kabloyu (veya veri yolunu) paylaşır ve işte Github'daki Arduino kodu. Aşağıdaki dosyadaki ek, kodları ve kablolama haritasını da içerir.
Ayrıca, Windows'ta Arduino için USB sürücüsünü yükleyin. Çoğu "klon" Arduino, CH341 USB sürücüsünü kullanır. Sürücü burada.
Arduino'yu Windows USB'nize takarken sürücüyü yükleyin, sürücüyü tanımalı ve bir COM bağlantı noktası atamalıdır (benimki COM4)
Seri Monitör, yukarıdaki fotoğraftaki gibi çıkmalıdır.
Adım 3: Fişi Çıkarıp Gücü RPI'ye Takarak RPi'yi Önyükleyin. VNCViewer'ı Başlatın, RPi'nize Giriş Yapın
VNCViewer aracını kullanarak Python betiğini aktarın. VNCViewer'ın üst kısmına yakın bir yerde bir afiş var, iki ok düğmesi arayın. RPi'den Windows'a veri aktarmak için, RPi'nin masaüstünde sağ üstteki (Wifi simgesinin yanında) VNC'de Dosya Aktarımı simgesini kullanın.
Raspberry, Linux üzerinde çalışır ve Python 2 ve 3 varsayılan olarak yüklenir. Seri hattan veri çıktısı almak için pyserial adlı bir Python kütüphanesi kurmanız yeterlidir.
python Serial'i kurmak için bu satırı Linux terminaline yazın
sudo apt-get install python3-serial
- Windows'ta: bu PowellShell'i yazın:
- pip.exe pyserlal'ı kurun
Ardından betiği indirin ve RPi'nin masaüstüne kaydedin
Komut dosyasını çalıştırmak için önce onu çalıştırılabilir hale getirin:
sudo chown u+x recordSerial.py
Arduino kodunu Arduino kartına yükleyin, ardından USB kablonuzu USB'ye takın, bağlantı noktasını şu şekilde kontrol edin:
- Linux'ta terminale şunu yazın: ls /dev/ttyUSB*
- Wndows'ta: Aygıt Yöneticisi'ne gidin, COM #'u kontrol edin
Komut dosyası Windows'ta değiştirilirse, garip satır sonlandırma karakterini Windows tarafından kaldırmak için Python komut dosyasını dos2unix'e çalıştırmanız gerekebilir. tarafından yükleyin
sudo apt-get yükleme dos2unix
ve bunu terminalde çalıştırarak komut dosyasını dönüştürün
dos2unix recordSerial.py
Bir metin düzenleyici tarafından komut dosyasındaki asıl bağlantı noktası değiştirildi:
sudo nano recordSerial.py
sonra./recordSerial.py yourfilename.txt dosyasını çalıştırın
Python betiği, ayarlanabilen her 10 satır için verileri RAM'den diske kaydeder.
Kaydı durdurmak için Ctrl + C tuşlarına basın, Komut dosyası Windows'ta çalıştırılabilir (çift tıklama), günlük verilerinin adı, bir zaman damgası içeren varsayılan değerdir.
PowerShell kullanıyorsanız, özelleştirilmiş dosya adınızı girebilirsiniz, python.exe recordSerial.py harika.txt
Tüm 18B20'ler aynı değildir. Okumaya bakın!
Kodu da GitHub'a gönderdim.
Umarım bu eğitim yardımcı olur!
Adım 4: Klasörü Paylaşmak için Samba'yı Kurun
Bu adım, Raspberry Pi'de barındırılan ve diğer bilgisayarlardan erişilebilen paylaşılan bir klasöre sahip olmak için bazı temel kurulumlarda size yol gösterecektir.
İlk olarak, ağ üzerinden paylaşım klasörünü paylaşmak ve yönetmek için bir program olan samba'yı kurun:
sudo apt-get kurulum samba
paylaşılan bir klasör oluştur
mkdir ~/Desktop/sambaShare
samba için yapılandırma dosyasını şu şekilde değiştirin:
sudo samba /etc/samba/smb.conf
dosyanın sonuna aşağıdaki satırları ekleyin:
[sambaShare] yorum = Araştırma RPI yolundaki Klasörü paylaş = /home/pi/Desktop/sambaShare göz atılabilir = evet salt okunur = yazılabilir hayır = evet genel = evet maske oluştur = 0777 rectory maskesi = 0777 misafir tamam = evet
Pencerelerde yazma sorunu yaşıyorsanız, dosyanın sonuna şu satırı ekleyerek zorlayın: force user = pi
Linux'ta kök kullanıcıyı kullanmanız gerekebilir (sorunu öğrendiğimde göndereceğim)
Ardından, samba'ya bir kullanıcı ekleyin ve bir şifre de oluşturun:
sudo smbpasswd -a pi
ardından samba için bir şifre girin (sistemdeki pi kullanıcısının şifresiyle aynı veya bundan farklı olabilir)
yapılandırma dosyasının uygun olup olmadığını test edin
test parm
kaydetmek için Ctrl+X tuşlarına basın ve ardından samba hizmetini şu şekilde yeniden başlatın:
sudo systemctl smbd'yi yeniden başlat
Ana bilgisayarda Linux diyelim:
evet değilse, samba plus sambaclient'i ve paylaşım sürücüsünü desteklemek için cifs'i kurun, lütfen şunu çalıştırarak yapın:
sudo apt-get, samba smbclient cifs-utils'i yükler
RPI'daki paylaşılan klasörün hazır olup olmadığını şu şekilde kontrol edin:
sudo smbclient -L sizinRPI_IP
paylaşım sürücüsünü görürseniz, Linux'ta bir bağlama noktası oluşturun:
sudo mkdir /mnt/researchRPi
sudo chown kullanıcı: kullanıcı grubu -R /mnt/researchRPI
kullanıcı, kullanıcı grubu Linux kullanıcınız ve grup adınızdır
ardından paylaşımı şu şekilde bağlayın:
sudo mount -f cifs -o kullanıcı adı=pi //your_rpi_IP/sambaShare /mnt/researchRPi
şifrelerinizi girin ve masaüstünüze yumuşak bir bağlantı yapın:
sudo ln -s /mnt/researchRPi ~/Desktop/researchRPi
paylaşım klasöründe okuma-yazma izniyle ilgili sorununuz varsa, zayıf bir izinle deneme yapın:
PI'de:
sudo chmod -R 776 ~/Desktop/sambaShare
Windows'ta daha da kolay, Bilgisayarım'a gidin ve bir klasörü eşleyin, ardından RPI'nin IP'sini girin, paylaşılan klasör görünmelidir. Mac'te ağdaki paylaşılan klasöre göz atabileceğiniz bir şey olduğuna inanıyorum.
Adım 5: Faydalı Referanslar
Aşağıda bazı faydalı referanslar bulunmaktadır:
- Burada pyserial ve numpy kütüphanelerini kullanan başka bir yaklaşım var.
- Elektronik iletişime kapsamlı bir bakış, Arduino IDE'yi kurmakla başlar. Daha derin bir dalış istiyorsanız iyi bir referans.
- Kısa ama somut bir yazı. Verileri günlüğe kaydetmek için alternatifler için kısa ve yeterli seçenekler
Önerilen:
Arduino UNO ve SD-Kart ile Nem ve Sıcaklık Gerçek Zamanlı Veri Kaydedici Nasıl Yapılır - Proteus'ta DHT11 Veri Kaydedici Simülasyonu: 5 Adım
Arduino UNO ve SD-Kart ile Nem ve Sıcaklık Gerçek Zamanlı Veri Kaydedici Nasıl Yapılır | Proteus'ta DHT11 Veri Kaydedici Simülasyonu: Giriş: merhaba, ben Liono Maker, işte YouTube bağlantısı. Arduino ile yaratıcı projeler yapıyoruz ve gömülü sistemler üzerinde çalışıyoruz
Yeni Başlayanlar İçin Bir DJ Kurulumu Nasıl Yapılır - Vinyl Style!: 7 Adım
Yeni Başlayanlar İçin Bir DJ Kurulumu Nasıl Yapılır - Vinyl Style!: Bu Eğitilebilir Kitapta, size vinil kullanarak klasik pikap stili ile bir DJ kurulumunun nasıl yapıldığını göstereceğim. İster bir hobici olun, ister profesyonel olmak ve muhtemelen gelir elde etmek için dünyayı turlamak istiyorsanız, bu adımlar sizi
Bir Arduino'yu Kitaplık Olmadan Kayan Bir Metin Görüntülemek İçin Başka Bir Arduino Kullanarak Programlamak: 5 Adım
Bir Arduino'yu Kitaplık Olmadan Kayan Bir Metni Görüntülemek için Başka Bir Arduino Kullanarak Programlama: Sony Spresense veya Arduino Uno o kadar pahalı değil ve çok fazla güç gerektirmez. Ancak projenizin güç, alan ve hatta bütçe kısıtlaması varsa Arduino Pro Mini kullanmayı düşünebilirsiniz. Arduino Pro Micro'nun aksine, Arduino Pro Mi
MotoStudent Elektrikli Yarış Bisikleti için Veri Toplama ve Veri Görselleştirme Sistemi: 23 Adım
MotoStudent Elektrikli Yarış Bisikleti için Veri Toplama ve Veri Görselleştirme Sistemi: Veri toplama sistemi, harici sensörlerden veri toplamak, depolamak ve daha sonra işlemek için birlikte çalışan bir donanım ve yazılım topluluğudur, böylece grafiksel olarak görselleştirilip analiz edilebilir, mühendislerin yapmasına izin vermek
Bir Proxy Sunucusu için Raspberry Pi Kurulumu: 6 Adım
Raspberry Pi'yi Proxy Sunucusu için Ayarlama: Raspberry Pi'nizin bir proxy sunucu üzerinden internete erişmesini istiyorsanız, internete erişmeden önce Pi'nizi sunucuyu kullanacak şekilde yapılandırmanız gerekir. Proxy sunucusunu kurabileceğiniz iki yöntem vardır. Ancak, ancak ilk m'de