Uno'da aynı anda 12 V adaptör ve USB: dizüstü bilgisayarımı yakar mı?
Yapay zekâ tarafından English dilinden çevrildi ·
merhaba, birinci sınıf öğrencisiyim, bariz bir soruysa çok özür dilerim.A0 üzerinden kapasitif toprak nem sensörünü okuyan bir Uno’m var ve bir röle modülü üzerinden 12 V’luk bir solenoid vanayı açıp kapatıyorum. Uno, USB seri portu üzerinden dizüstü bilgisayarımla konuşuyor; dizüstündeki küçük bir Python betiği satırları okuyup cihazın HTTP API’si ile Hermetry’ye gönderiyor. Bu kısım çalışıyor, kartımda soil_moisture değerini görebiliyorum.Vana 12 V’a ihtiyaç duyuyor, bu yüzden 12 V adaptörü barrel jack girişine takmak istiyorum. Barrel jack ve USB kablosu aynı anda takılı olabilir mi? Dizüstü bilgisayarımın USB portuna geri besleme yapmasından korkuyorum.Ayrıca iki garip durum var: vana tıkladığında nem okumaları birkaç örnek boyunca yaklaşık 410’dan 600’lü değerlere sıçrıyor; bazen de COM portu dizüstüden kayboluyor ve betiğim “could not open port” hatasıyla çöküyor.
hi, first year student, so sorry if this is obvious.
I have an Uno reading a capacitive soil moisture sensor on A0 and switching a 12 V solenoid valve through a relay module. The Uno talks to my laptop over USB serial, and a small Python script on the laptop reads the lines and posts them to Hermetry with the device HTTP API. That part works, I can see soil_moisture on my board.
The valve needs 12 V so I want to plug a 12 V adapter into the barrel jack. Is it OK to have the barrel jack AND the USB cable plugged in at the same time? I’m scared of back-feeding into my laptop’s USB port.
Also two weird things: when the valve clicks, the moisture reading jumps from around 410 to 600-something for a few samples, and sometimes the COM port disappears from the laptop and my script crashes with “could not open port”.
Yapay zekâ tarafından English dilinden çevrildi ·
Bence ikisinden birini seçmen gerekiyor? Adaptörü kullanırken USB’yi her zaman çıkarırım.
I think you have to choose one or the other? I always unplug the USB when I use an adapter.
Yapay zekâ tarafından English dilinden çevrildi ·
Hayır, Uno ikisini de kaldırır. Ancak röle nasıl besleniyor ve topraklar nerede birleşiyor? Zıplayan okumalar ve kaybolan port, besleme değil vanaya benziyor.
No, the Uno handles both. But how is the relay powered, and where do the grounds meet? The jumping readings and the disappearing port sound like the valve, not the supply.
Yapay zekâ tarafından English dilinden çevrildi ·
Röle modülünün VCC’si Uno’nun 5V pinine bağlı. Valf, aynı adaptörden röle kontağı üzerinden 12 V ile besleniyor. Her şey breadboard üzerinde tek bir ortak toprağı paylaşıyor. Hiçbir yerde diyot yok, bir tane gerektiğini bilmiyordum.
Relay module VCC is on the Uno’s 5V pin. Valve is 12 V through the relay contact, from the same adapter. Everything shares one ground on the breadboard. No diode anywhere, I didn’t know I needed one.
Yapay zekâ tarafından English dilinden çevrildi ·
İkisi birden kullanmak sorun değil. Uno, VIN gerilimi yaklaşık 6,6 V’un üzerine çıktığında 5 V hattını regülatöre bağlayan bir karşılaştırıcıya sahip ve seri hatlar gücün nereden geldiğini umursamadığı için USB veri iletişimi çalışmaya devam eder. Dizüstü bilgisayarınız bundan dolayı bir risk altında değil.Asıl sorun solenoid. Serbest dönüş diyotu olmayan bir solenoid bobini, röle her açıldığında büyük bir gerilim sıçraması oluşturur ve bu sıçrama ortak breadboard toprağınız üzerinden yayılır. Analog okumadaki sıçrama ve büyük ihtimalle USB bağlantısının kopması bundan kaynaklanıyor. Benim değiştireceklerim:
- Solenoidin üzerine, katot +12 V’a gelecek şekilde bir 1N4007.
- Röle bobininin gücünü Uno’nun 5V pininden değil, 12 V tarafından ya da ayrı bir 5 V kaynağından alın. Üzerindeki regülatör, 12 V girişten röle beslerken ısınır.
- Vananın toprağını adaptöre geri götürün ve Uno toprağına yalnızca tek bir noktadan bağlayın; sensörün kullandığı breadboard raylarından geçirmeyin.
- Sensör beslemesinin üzerine, sensöre yakın şekilde 100 nF ile birlikte 10 µF.
- Sketch içinde, vanayı değiştirdikten sonra bir saniye boyunca örnek almayın ve 8 okumanın ortalamasını alın.
Dizüstü tarafında yalnızca temiz okumaları gönderin ve dizüstü saatiniz senkronize değilse zamanı Hermetry’nin damgalamasına bırakın:
import serial, requests
s = serial.Serial("/dev/ttyACM0", 9600, timeout=5)
URL = "https://<your-host>/api/v1/telemetry"
HDR = {"Authorization": "Bearer <device token>", "Content-Type": "application/json"}
while True:
line = s.readline().decode(errors="ignore").strip()
if line.isdigit():
requests.post(URL, json={"soil_moisture": int(line)}, headers=HDR, timeout=10)
Yük kuralları Device HTTP API sayfasında.
Both at once is fine. The Uno has a comparator that switches the 5 V rail to the regulator when VIN is above roughly 6.6 V, and USB data keeps working because the serial lines don’t care where power comes from. Your laptop is not at risk from that.
The trouble is the solenoid. A solenoid coil with no flyback diode throws a big voltage spike every time the relay opens, and that spike goes through your shared breadboard ground. That’s the jump in the analog reading and very likely the USB dropping out. What I’d change:
- A 1N4007 across the solenoid, cathode to +12 V.
- Take the relay coil power from the 12 V side or a separate 5 V supply, not the Uno’s 5V pin. The onboard regulator gets hot feeding a relay off 12 V in.
- Run the valve’s ground back to the adapter, and join it to the Uno ground at one point only, not through the breadboard rails the sensor uses.
- 100 nF plus 10 µF across the sensor supply, close to the sensor.
- In the sketch, don’t sample for a second after switching the valve, and average 8 readings.
On the laptop side, send only clean readings and let Hermetry stamp the time unless your laptop clock is synced:
import serial, requests
s = serial.Serial("/dev/ttyACM0", 9600, timeout=5)
URL = "https://<your-host>/api/v1/telemetry"
HDR = {"Authorization": "Bearer <device token>", "Content-Type": "application/json"}
while True:
line = s.readline().decode(errors="ignore").strip()
if line.isdigit():
requests.post(URL, json={"soil_moisture": int(line)}, headers=HDR, timeout=10)
Payload rules are on Device HTTP API.
Yapay zekâ tarafından English dilinden çevrildi ·
Sorun diyottaydı. Vanaya bir 1N4007 taktım ve röleyi kendi 5 V besleme kaynağına aldım. COM portu iki gündür bir kez bile düşmedi ve vana anahtarlandığında okuma 405-415 civarında kalıyor. Bir de bir saniyelik bekleme ekledim. Teşekkürler!
It was the diode. Put a 1N4007 on the valve and moved the relay to its own 5 V supply. The COM port hasn’t dropped once in two days and the reading stays around 405-415 when the valve switches. Also added the one second pause. Thanks!
Yapay zekâ tarafından English dilinden çevrildi ·
Haha, yanıldığımı kabul ediyorum. Ben de bir şey öğrendim.
Ha, I stand corrected. Learned something too.
- Bu konuyu yanıtlamak için giriş yapmış olmalısınız.
Sohbete katılın
Soru sormak ve yanıtlamak, yararlı gönderileri beğenmek ve sorununuzu çözen yanıtı işaretlemek için oturum açın. Her katkı puan ve seviye kazandırır.

