openpilot Takılı 1993 Model Volvo'nun Otonom Sürüşe Dönüştürülmesi
(practicapp.com)- Carbage Run 2025 Winter edition katılım koşullarına uygun eski bir araç olarak 1993 Volvo 940 Estate seçildi ve özgünlük değerlendirmesi için openpilot tabanlı L2 sürücü destek dönüşümüne başlandı
- openpilot 275'ten fazla modern aracı destekliyor, ancak bu Volvo'da direksiyon, hızlanma ve frenleme mekanik/hidrolik olduğu için her işlevi elektronik olarak hareket ettirecek aktüatörler gerekiyor
- Direksiyon, 2020 Toyota Corolla EPS ve harici direksiyon açı sensörü Volvo direksiyon kolonuna aktarılıp temel güç, kontak sinyali ve CAN bağlantısıyla çalışacak şekilde gerçekleştirildi
- Frenleme için vakumlu fren servosu Bosch iBooster ile değiştirildi; hızlanma ise RC servo ve yardımcı kabloyla karbüratör valfini çekme yöntemiyle kuruldu
- Mevcut hidrolik direksiyon desteği ile yeni elektrikli direksiyon desteği birlikte çalıştığından direksiyon hafifledi, ancak virajdan sonra direksiyonun kendiliğinden merkeze dönmemesi sınırlaması devam ediyor
Carbage Run için 1993 Volvo'yu otonom araca dönüştürme
- Başlangıç noktası Carbage Run 2025 Winter edition katılımı
- Kışın İsveç'ten geçip Kuzey Kutup Dairesi'ne kadar giderek Helsinki'ye inen 6 günlük yolculuk
- Yaklaşık 400 araç birlikte katılıyor
- Katılan araçların en az 20 yaşında olması ve günlük değerinin €1000 altında olması gerekiyor
- Belçika'ya gidiş dönüş de dahil edildiğinde, bir haftadan biraz uzun sürede yaklaşık 6000 km yol yapmak gerekiyor
- Aracın özgünlüğü de değerlendirildiği için 1993 model Volvo 940 Estate'i otonom araç gibi yapmaya karar verildi
openpilot'ın gerektirdiği araç koşulları
- openpilot, comma.ai tarafından geliştirilen L2 gelişmiş sürücü destek projesidir
- Tesla Autopilot gibi kısmi otonom sürüşe yakın işlevler sunar
- Son dönemde Toyota, Honda, Hyundai, VW dahil 275'ten fazla araç modelini destekler
- Tesla Model 3/Y de destek kapsamındadır
- Temel koşul, aracın direksiyon, hızlanma ve frenlemeyi elektronik olarak çalıştırabilmesidir
- Modern araçlarda genellikle aşağıdaki aygıtlar CAN-bus mesajlarıyla sürüş komutları alır
- Electric Power Steering, yani EPS
- Elektrikli fren servosu veya ABS pompası
- Elektronik motor kontrol ünitesi
- 1993 Volvo 940 bu koşullardan uzaktır
- Direksiyon hidroliktir
- Gaz pedalı karbüratöre uzanan kablolu yapıdadır
- Fren servosu vakumludur
Direksiyon: Toyota Corolla EPS aktarımı
- Şeridi korumak için direksiyona elektronik olarak tork verebilen bir direksiyon aktüatörü gerekir
- Seçilen yöntem, 2020 Toyota Corolla EPS aktüatörünü ve ECU'sunu aktarmaktır
- Corolla'da bu motor, gösterge panelinin arkasındaki direksiyon kolonuna takılır
- Sürücü torkunu ölçer ve çıkış miline güçlendirilmiş kuvvet iletir
- Volvo'nun orijinal düz milli direksiyon kolonu çıkarılıp Corolla EPS'i araya yerleştirildi
- Corolla rack'inden direksiyon simidi ayarıyla ilgili parçalar mümkün olduğunca çıkarıldı
- Volvo kolonunun bir kısmı kesilip Corolla tarafındaki spline ile kaynaklandı
- Orijinal direksiyon şasisinden EPS'e uzanan ek bir takviye kondu
- Corolla'da harici bir direksiyon açı sensörü de bulunur
- EPS motorunun içindeki sensör, dahili kontrol döngüsü için hassas göreli açı ölçümünde kullanılır
- Harici sensör, düz gidişte 0 dereceye karşılık gelen mutlak direksiyon açısını sağlar
- openpilot'ın araç kontrolörü kodu da mutlak direksiyon açısına ihtiyaç duyar
- Toyota devre şemaları ve konnektör belgeleri küçük bir ücretle indirilebildiği için kablolamayı anlamak basitti
- Direksiyon rack'i için GND, sürekli 12V, 80A sigorta, 12V kontak sinyali ve direksiyon açı sensörü için CAN gerekir
- Yalnızca bu bağlantıyla EPS çalıştı; Toyota araç hızı mesajları vb. olmadığından limp mode'da olması muhtemel
Hidrolik direksiyon ile elektrikli direksiyonun birlikte kalması sorunu
- Volvo'nun orijinal hidrolik power steering sistemi aynen kaldı ve elektrikli EPS ile aynı anda çalışıyor
- Hidrolik desteği kapatıp yalnızca elektrikli desteği kullanmak da mümkün, ancak direksiyon rack'inin normalde EPS'ten gelen daha büyük torku sürekli almaya göre tasarlanıp tasarlanmadığı belirsiz
- İki direksiyon desteği de açıkken sürüş mümkündü ve direksiyon hafifledi
- Dezavantaj, aracın kendi toparlama torkunun iki sistemi ters yönde döndürmeye yetmemesi
- Virajda direksiyon bırakıldığında merkeze dönmüyor
- Bırakıldığı konumda kalıyor
- Olası çözümlerden biri, hidrolik basıncı düşürerek orijinal destek kuvvetini azaltmak; ancak henüz denenmedi
Frenleme: Bosch iBooster montajı
- Uzun yol sürüş yükünü azaltan modern araç özelliklerinden biri Adaptive Cruise Control
- Öndeki araçla güvenli mesafeyi korumak için aracın otomatik fren yapabilmesi gerekir
- Orijinal Volvo frenleri, sürücünün pedala uyguladığı kuvveti vakum desteğiyle artırıp master silindire bastıran bir yapıya sahip
- Modern araçlarda da temel ilke benzerdir; Tesla gibi araçlarda kullanılan Bosch iBooster, vakum desteğini kuvvet sensörü ve elektrik motoru ile değiştirir
- iBooster, EV dönüşüm projelerinde yaygın olarak kullanılır
- Mevcut motorun vakum kaynağını değiştirmeye kıyasla daha temiz bir kurulum sağlar
- CAN bağlı olmasa da limp mode'a girer ve kontrol işlevi olmadan kullanılabilir
- EVcreate, iBooster kullanımını ele alan bir yazı yayımladı; örnek olarak Wiring the iBooster var
- İkinci el iBooster yaygın kullanıldığı için araç fiyatına kıyasla pahalıydı
- EVcreate'den Lars, CAN kontrol araştırması yapılması şartıyla bir iBooster sağladı
iBooster montaj süreci ve fren boruları
- Volvo'nun vakum servosu çıkarılıp iBooster takıldığında, beklenenin aksine cıvata delik deseni ve merkez hizalama deliği tam olarak uydu
- iBooster'a entegre pushrod da pedala bağlanmak için neredeyse uygun uzunluktaydı
- Pedala basılmadığında pushrod'un tamamen açık kalması için dişli saplamaya 2 mm pul eklendi
- iBooster master silindirinin port konumu farklı olduğundan orijinal fren hatları uymadı
- Küçük bir dağıtım bloğuna benzeyen parçaya kadar yeni bakır fren hattı bağlandı
- Fren havası alınıp güç bağlantısı yapıldıktan sonra frenler normal çalıştı
- Debriyaj da aynı haznedeki fren hidroliğiyle hidrolik olarak çalıştığından küçük bir ayrı depo eklendi
- iBooster master silindir haznesinde debriyaj için port yok
Hızlanma: RC servo ve yardımcı kablo
- Volvo'nun gaz pedalı, Bowden kablosuyla karbüratör hava valfine bağlı tamamen mekanik bir yapıdır
- Modern araçlar karbüratör yerine doğrudan enjeksiyon ve gelişmiş motor kontrol üniteleri kullandığından, uygun bir modern otomobil gaz aktüatörü kolayca bulunamadı
- Gaz aktüatörünün direksiyon veya frenleme kadar büyük güvenlik sonuçları doğurmadığı düşünülerek hazır hobi parçalarıyla kuruldu
- Standart cruise control mantığında olduğu gibi, sürücü pedala daha fazla bastığında uygulanan gaz konumunu geçersiz kılabilecek şekilde tasarlandı
- Hava valfi kasnağına 2 kablo bağlandı
- Daha uzağa çeken kablonun kazandığı bir yöntem
- AliExpress'ten su geçirmez RC servo satın alındı ve ikinci bir kasnak işlenerek servoya takıldı
- Servo bağlantısı yapıldı ve gevşek kabloyu sınırlamak için bronz kılavuz burç eklendi
Radar ve sonraki işler
- Aktüatör olmasa da ön ızgaranın arkasına Tesla Continental radar sensörü de takıldı
- openpilot'ta yalnızca görüşe dayalı ACC de bir ölçüde çalışıyor, ancak gerçek radar kullanmak daha yumuşak ve tutarlı bir deneyim sunuyor
- Sonraki yazı kablolama ve özel ECU'yu ele alacak
- Aktüatörlerin düzgün çalışmasını sağlama görevi
- Cruise control düğmelerinin uygulanması
- Hız ve sinyallerin okunması
- Daha sonra ECU kodu ve openpilot portu açıklanıp açık kaynak olarak yayımlanacak
1 yorum
Hacker News yorumları
Volvo 940 gerçekten harika bir araba ve bugüne kadar üretilmiş otomobiller arasında kalitesi ve tasarımıyla öne çıkan bir araç
1960'lardaki Volvo 140'tan başlayıp 70'lerde 240, 80'lerde 740 üzerinden yavaş yavaş evrilmiş, çok olgunlaşmış bir tasarım olduğu için 940'a gelindiğinde neredeyse tüm sorunları giderilmiş durumdaydı
Yalnız keşke AWD ile yakıtı ekonomik bir dizel motor birlikte seçilebilseydi. Dizel vardı ama ABD'de satılmıyordu
Yazarı elektriksel hack konusunda epey bilgili görünüyor, ama otomobil tarafını bilseydi daha kolay çözebileceği kısımlar vardı. Örneğin daha yeni bir BOSCH ABS pompasına geçilseydi fren servosundan geçmeden frenler elektriksel olarak çalıştırılabilirdi; 90'ların sonlarında çekiş kontrolü bulunan Avrupa otomobillerinden itibaren bu tür donanımlar kullanılmaya başlanmıştı
Direksiyon için de komple elektrikli direksiyon kutusu aktarmak, Volvo 240'ın tamamen manuel direksiyon kutusunu takmak ya da hidrolik direksiyon pompasına bir klima kompresörü kavraması ekleyip park hızı üstünde kapatmak gibi çözümler mümkün olabilirdi
Ayrıca bu araba karbüratörlü değil, elektronik yakıt enjeksiyonlu. Gaz kelebeği gövdesinin üstünde enjektör ve yakıt rayı görünüyor. Daha önemlisi, bu araçta fabrikadan çıkan hız sabitleyici için elektronik gaz kelebeği kontrol sistemi vardı; eksik parçalar da ucuz ve yaygın olduğu için motorda zaten bulunan braket ve kamlara doğrudan uymuş olma ihtimali yüksek
Gerçekten de karbüratör yok; uçakta yarı uykulu yazarken kabloyla çalışan mekanik gaz kelebeği/hava valfi demek isterken yanlış yazmışım
Bu araçta ABS de yok. Bu model yılından itibaren opsiyon olmuş olabilir ama bu yüzden pompa değişimi bir seçenek değildi. iBooster harika ve kolay bir modifikasyon, tavsiye ederim
Henüz yapmadım ama hidrolik direksiyonda regülatörü şimlerle ayarlayıp basıncı düşürmeyi planlıyorum; bu kadarı yeterli olacak gibi. Şu anda da o modifikasyon olmadan bir miktar direksiyon kontrolü sağlanabiliyor
Günümüzdeki V90 gibi büyük Volvo'lar aptalca Çin tarzı lüks otomobillere dönüştü, bu yüzden almayı düşünmüyorum
“Günümüz arabalarında karbüratör yok; doğrudan enjeksiyon ve gelişmiş motor kontrol üniteleri kullanılıyor” açıklaması doğru değil
Aslında yakıt enjeksiyon sistemi gaz kelebeği kontrolünden oldukça bağımsızdır. Gerekli yakıt miktarı emme manifoldu basınç sensörüne göre hesaplandığı için yakıt enjeksiyonu ile kablolu gaz kelebeği plakasını birlikte kullanan araçlar da vardı
Sorun muhtemelen karbüratörün gaz kelebeği plakasının yukarısında olması gerektiğinden, modern gaz kelebeği gövdesi borulamasını uydurma tarafındaydı
O dönemdeki LH sistemlerinin tamamı MAF sensörü kullanıyordu
Son 5 yıldır openpilot geliştirmesine katkıda bulunuyorum ve bu projenin kullanıcı örnekleri her zaman ilgimi çekiyor
Bu tatilde kendi arabamla openpilot'u açıp 2500 mil yaptım ve harikaydı. Tüm yolculuğun muhtemelen yaklaşık %10'unu kendim sürdüm, kalanını otomasyona bıraktım
Yine de iyileştirilecek çok şey var; bu yıl openpilot fork'u oluşturup ADAS özelliklerini modern araçlara, yani Tesla'ya daha yakın hâle getirmeye odaklanmayı düşünüyorum
İlk sürümü Show HN'de paylaşacağım
Kendi imajımı derleyip flash etmeye cesaret edersem denemek istediğim şey, sinyal verilmiş şerit değişimini algılayıp yavaşlama özelliği. Bildiğim kadarıyla şu anda araç ancak diğer araç şeride girdikten sonra yavaşlıyor. Çok sayıda istisna durum olduğunu biliyorum ama bu oldukça güvenli ve nazik bir değişiklik gibi görünüyor
Ayrıca birden fazla aracın fren lambalarını algılayıp gaz pedalından ayağını çekmesi iyi olurdu. Şu anda hemen öndeki aracın radarını kullanıyor gibi görünüyor; ama çevredeki araçların %75'i fren lambalarını yakmışken yalnızca öndeki araç yavaş tepki veriyor ya da agresif sürüyorsa Comma'nın o zinciri daha da zorlaması için bir neden yok
Olsa gerçekten güzel olacak bir özellik de hız sınırı tabelalarını algılayıp hız sabitleme hızını buna göre ayarlaması. Özellikle çıkış rampasına 65 mph ile dalıp sonra viraj eğriliğinin hıza göre fazla olduğunu söyleyerek sızlanmasını azaltmak isterim
Çıkış rampasındaki “önerilen hız” tabelasını algılarsa herkesin istediği sonuç ortaya çıkar; rampa başka bir otoyola bağlandığında sürücünün ayrıca müdahale etmesine de gerek kalmaz. Dur tabelalarını, sarı veya kırmızı ışıkları da algılasa iyi olurdu. Trafik durumunu bile algılamasına gerek yok, ama dur tabelasına ve kırmızı ışığa tam hızla yaklaşırken uyarı vermesi pek hoş değil
Comma'nın aracımın elektrikli olduğunu bilip frene basmak yerine gaz pedalını bırakıp bırakamayacağına da bakmalıyım. Arabamda birkaç rejeneratif frenleme seviyesi var, bunu hesaba katması iyi olurdu; ama kişisel olarak BMW i3'e alıştığım için her zaman en güçlü rejeneratif frenlemede bırakıyorum
Bu arabayı İsveç’te kamu yollarında sürebilirler mi merak ediyorum
İsveç yasalarının bu tür DIY modifikasyonlar konusunda çok katı olduğunu sanıyordum; izin veriliyorsa şaşırtıcı olur
Bu tür modifikasyonlar İsveç ve Finlandiya kamu yollarında kesinlikle yasa dışı; çoğu zaman periyodik muayeneden geçmek de yeterli olmuyor. Yolda kullanılmasının yasal olması için tip onayı alınması gerekir
Hollanda’ya kayıtlı gibi görünüyor; Hollanda’da olsa bu araç periyodik muayeneden bile geçemez sanırım. Hollanda hükümetinin İngilizce bilgilendirme sayfası var: https://www.government.nl/topics/general-periodic-inspection...
Yine de projenin kendisi çok havalı
“Neyse ki [gaz pedalı servosu] ciddi güvenlik sorunu taşımayan tek aktüatör” cümlesi ürkütücü
O RC servosu tam gazda takılı kalırsa ne olur? Varsayım debriyaja basılacağı yönündedir herhalde, ama duruma göre ne olduğunu fark edip tepki vermek için fazla zaman olmayabilir
Doğrudan değinmemiş ama debriyajın da hidrolik çalıştığına dair bir ipucu var; bu yüzden manuel şanzıman olma ihtimali var gibi görünüyor. Avrupa’dan alınmış 1993 model bir Volvo için gayet makul bir tahmin
Yeni bir şanzıman takacaklarını sanmıyorum; kaba saba bir otomatik debriyaj eklemeye çalışıyor olabilirler
6000 km’lik sürüşün çoğu büyük ihtimalle bu durumdaydı. Vites değiştirmenin gerektiği yavaş trafikte “otonom sürüşten” vazgeçmek gerekir, ama yine de çok kullanışlı
Yazar, 2. bölümde kabloları ve aktüatörleri kararlı tutmak için kendi tasarladığı özel ECU’yu, hız sabitleyici düğmelerinin uygulanmasını, hız ve sinyal lambası verilerinin okunmasını ele alacağını; ardından 3. bölümde ECU kodunu ve openpilot portunu açıklayıp açık kaynak olarak yayımlayacağını söylemiş
Kendim yapmam ama bunu başaracak kadar cesur birinin olması hoşuma gidiyor. Harika bir hikâye malzemesi olur
Bu yazıyı arabaları daha iyi anlamak ve hem kendime hem de başkalarına DIY ilhamı vermek için kaydettim
comma 3X’e radar eklenebiliyor mu? Sadece görsel algı kullandığını sanıyordum, ilginç