Kendi yazılımın ile drone yapımı sorularım ?
Kendi yazılımın ile drone yapımı sorularım ?
Merhabalar ben arduino ile uğraşıyorum. Arduino bilmeyenler için şöyle özetleyeyim; İstediğiniz şeyi kodlayıp,istediğiniz şeyleri yapabilmenizi sağlayan bir geliştirme kartı. Bu kart ile motor sürülebiliyor fakat şuana kadar karşılaştığım motor videolarında güçlü bir motor kulananı görmedim ve drone yapmak istiyorum. Normalde motor sürücüleri var ama küçük motorlarda kullanıyorlar, droneda da esc var. ben bu escyi arduinoya bağlayabilir miyim? esc uçuş kontrçl kartından nasıl bilgi alımı sağlıyor. Youtubedan geldim ve videoları izledim. Ben daha teknik bilgiler arıyorum. Yardımcı olabilen var ise sevinirim.
Satılık parçalar var
Re: Kendi yazılımın ile drone yapımı sorularım ?
Alıcı için illa bir fly-sky gibi kumanda mı lazım? kendi kumandam var o sıkıntı yarattır mı? Onu da kendim yaptım. Eğer olursa f330 gövde üzerine drone yapıcam...
Satılık parçalar var
- Gökhan Bora
- Mesajlar: 1068
- Kayıt: 25 Mar 2018, 01:17
- Ad Soyad: Gökhan Bora
- Konum: Kırşehir
Re: Kendi yazılımın ile drone yapımı sorularım ?
merhaba. atmega328 gibi mikrodenetleyiciler bizim drone yapımında kullandığımız kontrol kartlarında bulunan stm32 f3, f4 mikrodenetleyicilerinden çok çok daha güçsüzdür. bu yüzden tam teşekküllü bir drone yapacaksanız atmega2560 çipli arduinoları kullanmanız gerekir. ama sadece alıcıdan gelen sinyalleri almak ve motorları döndürmek istiyorsanız atmega328 de işinizi görür.
arduino ile drone yapmak aslında gayet basittir. ama tabi bilmeyen için yazı yazmak bile çok zordur.
kumanda olarak ne kullandığınızın bir önemi yok. önemli olan alıcıdır. kullanmayı düşündüğünüz kumandanın alıcısı var mı? varsa bu alıcıda hangi çıkışlar var?
alıcıdaki çıkışlar şu açıdan önemlidir: eğer alıcınızda pwm çıkış varsa işiniz basit. sinyali geldiği gibi kullanabilirsiniz. ama alıcınız sbus/ppm gibi bir protokol kullanıyorsa ilk olarak bu protokol ile gelen sinyali dekode etmeniz gerekir. dekode işleminin hızlı yapılabilmesi lazım. yoksa gecikme olur ve siz kumandadan bir sinyal verdiğinizde drone bu sinyali anında algılamayacağı için kaza yaşanır.
motorlar için ise iki seçeneğiniz var: fırçalı ve fırçasız. fırçasız motor kullanacaksanız 3 fazlı bldc (brushless dc) motor sürücüsü geliştirmeniz lazım. 3 fazlı bldc sürücüsü (esc) yapmak ise zordur. zordur az kelime çok zordur. bu yüzden fırçasız motor kullanacaksanız kendi esc'nizi geliştirmek yerine satın almanızı öneririm.
fırçalı motor için ise işiniz çok basittir. her bir motor için bir tane n-channel mosfet kullanmanız yeterli. mosfetleri doğrudan pwm sinyalle kullanabileceğiniz için mosfetlerin gate ayağını arduinodaki pwm çıkışlarına doğrudan bağlamanız yeterli. ama kalibre etmeniz lazım. birbirinin aynı olan 4 mosfet kullansanız dahi mosfetlerin iç dirençleri farklı olabiliyor. bu yüzden her mosfetin aynı pwm sinyali seviyesinde aynı miktarda güç verdiğinden emin olmanız gerekiyor. yoksa drone havada yalpalar.
yukarıda alıcıdan sinyal alan ve motorları süren bir arduinodan bahsettim. bu iki işlemin yapılabilmesi için araya bir kontrolcü yazılımı girmesi gerekiyor. bu kontrolcü yazılımı, alıcıdan gelen sinyalleri yorumladıktan sonra mosfetlere ne kadar pwm aktaracağını belirleyecektir. bunun için ise ilk olarak bir dronun havada nasıl uçtuğunu, motorların hangi yöne dönmesi gerektiğini bilmeniz gerekiyor. örneğin bir dronun sola yaw hareketi yapması için hangi motorların diğerlerine göre daha hızlı dönmesi gerektiğini bilmeniz lazım.
motor sıralamasını bildiğinizi var sayıyorum.
1 - bir yöne yaw hareketi yapmak için 1 ve 4. motorların daha hızlı dönmesi lazım. diğer yöne yaw hareketi için 2 ve 3. motorların daha hızlı dönmesi lazım.
2 - bir yöne roll hareketi (yana yatma) için 1 ve 2. motorların daha hızlı dönmesi lazım. diğer yöne roll hareketi için ise 3 ve 4. motorların daha hızlı dönmesi lazım.
3 - bir yöne pitch hareketi (öne-arkaya yatma) için 1 ve 3. motorların daha hızlı dönmesi lazım. diğer yöne pitch hareketi için ise 2 ve 4. motorların daha hızlı dönmesi lazım.
4 - throttle (yükselme) hareketi için ise 4 motorun da güç alması lazım.
mode 2 kumanda kullandığınızı var sayarak bu maddelerde belirttiğim işlemler için:
1. maddedeki işlem için alıcıdan alınan 4. kanaldaki pwm seviyesine bakmanız gerekir.
2. maddedeki işlem için alıcıdan alınan 1. kanaldaki pwm seviyesine bakmanız gerekir.
3. maddedeki işlem için alıcıdan alınan 2. kanaldaki pwm seviyesine bakmanız gerekir.
4. maddedeki işlem için alıcıdan alınan 3. kanaldaki pwm seviyesine bakmanız gerekir.
kanallardan alınan bu bilgilerin harmanlanması lazım. çünkü kumandadan aynı anda hem pitch hem de roll hareketi için komut gelebilir. hatta 4 kanalın 4'ü de aynı anda değişken pwm sinyalleri gönderebilir. bu yüzden harmanlama işlemi yapılması lazım. harmanlama işleminin yapılabilmesi için ise PID bilgisinin olması lazım.
yukarıdaki işlemler ile acro modlu bir quadcopter yapabilirsiniz. self leveling için ise ek 2 komponent kullanmanız lazım: jiroskop ve ivmeölçer. jiroskop, dronun sağa-sola-öne-arkaya ne kadar yattığı hakkında bilgi verir. ivmeölçer ise tüm yönlere doğru ne kadar bir hızlanma yaptığı bilgisini verir.
yukarıda drone için temel şeyleri yazdım. yazdığım işlemleri adım adım yapmanız durumunda gerçekten kendi dronunuzu yapmış olursunuz. tabi bunlar dışında da yapılacak işler var. bir arduinoyu 5v ile beslersiniz. ama 5v batarya yok. bu yüzden bağlanacak bataryanın bir smps (switch mode power supply) ile 5v'a çevirilmesi lazım. alıcıyı da aynı şekilde beslemeniz lazım.
arduino ile drone yapmak aslında gayet basittir. ama tabi bilmeyen için yazı yazmak bile çok zordur.
kumanda olarak ne kullandığınızın bir önemi yok. önemli olan alıcıdır. kullanmayı düşündüğünüz kumandanın alıcısı var mı? varsa bu alıcıda hangi çıkışlar var?
alıcıdaki çıkışlar şu açıdan önemlidir: eğer alıcınızda pwm çıkış varsa işiniz basit. sinyali geldiği gibi kullanabilirsiniz. ama alıcınız sbus/ppm gibi bir protokol kullanıyorsa ilk olarak bu protokol ile gelen sinyali dekode etmeniz gerekir. dekode işleminin hızlı yapılabilmesi lazım. yoksa gecikme olur ve siz kumandadan bir sinyal verdiğinizde drone bu sinyali anında algılamayacağı için kaza yaşanır.
motorlar için ise iki seçeneğiniz var: fırçalı ve fırçasız. fırçasız motor kullanacaksanız 3 fazlı bldc (brushless dc) motor sürücüsü geliştirmeniz lazım. 3 fazlı bldc sürücüsü (esc) yapmak ise zordur. zordur az kelime çok zordur. bu yüzden fırçasız motor kullanacaksanız kendi esc'nizi geliştirmek yerine satın almanızı öneririm.
fırçalı motor için ise işiniz çok basittir. her bir motor için bir tane n-channel mosfet kullanmanız yeterli. mosfetleri doğrudan pwm sinyalle kullanabileceğiniz için mosfetlerin gate ayağını arduinodaki pwm çıkışlarına doğrudan bağlamanız yeterli. ama kalibre etmeniz lazım. birbirinin aynı olan 4 mosfet kullansanız dahi mosfetlerin iç dirençleri farklı olabiliyor. bu yüzden her mosfetin aynı pwm sinyali seviyesinde aynı miktarda güç verdiğinden emin olmanız gerekiyor. yoksa drone havada yalpalar.
yukarıda alıcıdan sinyal alan ve motorları süren bir arduinodan bahsettim. bu iki işlemin yapılabilmesi için araya bir kontrolcü yazılımı girmesi gerekiyor. bu kontrolcü yazılımı, alıcıdan gelen sinyalleri yorumladıktan sonra mosfetlere ne kadar pwm aktaracağını belirleyecektir. bunun için ise ilk olarak bir dronun havada nasıl uçtuğunu, motorların hangi yöne dönmesi gerektiğini bilmeniz gerekiyor. örneğin bir dronun sola yaw hareketi yapması için hangi motorların diğerlerine göre daha hızlı dönmesi gerektiğini bilmeniz lazım.
motor sıralamasını bildiğinizi var sayıyorum.
1 - bir yöne yaw hareketi yapmak için 1 ve 4. motorların daha hızlı dönmesi lazım. diğer yöne yaw hareketi için 2 ve 3. motorların daha hızlı dönmesi lazım.
2 - bir yöne roll hareketi (yana yatma) için 1 ve 2. motorların daha hızlı dönmesi lazım. diğer yöne roll hareketi için ise 3 ve 4. motorların daha hızlı dönmesi lazım.
3 - bir yöne pitch hareketi (öne-arkaya yatma) için 1 ve 3. motorların daha hızlı dönmesi lazım. diğer yöne pitch hareketi için ise 2 ve 4. motorların daha hızlı dönmesi lazım.
4 - throttle (yükselme) hareketi için ise 4 motorun da güç alması lazım.
mode 2 kumanda kullandığınızı var sayarak bu maddelerde belirttiğim işlemler için:
1. maddedeki işlem için alıcıdan alınan 4. kanaldaki pwm seviyesine bakmanız gerekir.
2. maddedeki işlem için alıcıdan alınan 1. kanaldaki pwm seviyesine bakmanız gerekir.
3. maddedeki işlem için alıcıdan alınan 2. kanaldaki pwm seviyesine bakmanız gerekir.
4. maddedeki işlem için alıcıdan alınan 3. kanaldaki pwm seviyesine bakmanız gerekir.
kanallardan alınan bu bilgilerin harmanlanması lazım. çünkü kumandadan aynı anda hem pitch hem de roll hareketi için komut gelebilir. hatta 4 kanalın 4'ü de aynı anda değişken pwm sinyalleri gönderebilir. bu yüzden harmanlama işlemi yapılması lazım. harmanlama işleminin yapılabilmesi için ise PID bilgisinin olması lazım.
yukarıdaki işlemler ile acro modlu bir quadcopter yapabilirsiniz. self leveling için ise ek 2 komponent kullanmanız lazım: jiroskop ve ivmeölçer. jiroskop, dronun sağa-sola-öne-arkaya ne kadar yattığı hakkında bilgi verir. ivmeölçer ise tüm yönlere doğru ne kadar bir hızlanma yaptığı bilgisini verir.
yukarıda drone için temel şeyleri yazdım. yazdığım işlemleri adım adım yapmanız durumunda gerçekten kendi dronunuzu yapmış olursunuz. tabi bunlar dışında da yapılacak işler var. bir arduinoyu 5v ile beslersiniz. ama 5v batarya yok. bu yüzden bağlanacak bataryanın bir smps (switch mode power supply) ile 5v'a çevirilmesi lazım. alıcıyı da aynı şekilde beslemeniz lazım.
Ödev yaptırmak isteyenlerden çok fazla mesaj geldiği için özel mesaj kutuma bakamıyorum.
Re: Kendi yazılımın ile drone yapımı sorularım ?
Bir konuya daha yazmıştım youtube'da Joop Brokking'in videolarına bakabilirsiniz. Arduino ide'si üzerinden basit bir flight controller yazmıştı. Son videolarında bunu daha da geliştirdi gps hold özelliği de ekledi. Gayet güzel bir anlatımı var. Biraz zor gelebilir ingilizce seviyeniz çok iyi değilse ama yapabilirsiniz.
-
- Mesajlar: 1
- Kayıt: 17 Eki 2020, 02:30
- Ad Soyad: Berkay'la Elektronik
- Konum: Ingiltere
- İletişim:
Re: Kendi yazılımın ile drone yapımı sorularım ?
Bir önceki mesajda belirtildiği gibi Joop Brokking'in videolarını ben de öneriyorum. Ancak kodları anlamakta zorlanabilirsiniz.
Aşağıdaki Türkçe video serisi, Arduino ile basit bir Drone geliştirmeyi donanım ve yazılım kısmıyla beraber adım adım anlatıyor. Umarım faydası dokunur.
https://www.youtube.com/playlist?list=P ... 45f750nHhu
Aşağıdaki Türkçe video serisi, Arduino ile basit bir Drone geliştirmeyi donanım ve yazılım kısmıyla beraber adım adım anlatıyor. Umarım faydası dokunur.
https://www.youtube.com/playlist?list=P ... 45f750nHhu
Re: Kendi yazılımın ile drone yapımı sorularım ?
Anlatım şekliniz ve akıcılığınız çok hoşuma gitti.Diğer kaynaklar aksine patır patır anlatmaya çalışmaktansa hazmettire hazmettire anlatmışsınız.Bence sadece yazılım mantığını merak edenler değil uçuş mantığını ve basit elektronik olayları merak edenler de az çok bir şeyler öğrenebilir.Başarılarınızın devamını dilerim.BerkaylaElektronik yazdı: ↑17 Eki 2020, 02:45 Bir önceki mesajda belirtildiği gibi Joop Brokking'in videolarını ben de öneriyorum. Ancak kodları anlamakta zorlanabilirsiniz.
Aşağıdaki Türkçe video serisi, Arduino ile basit bir Drone geliştirmeyi donanım ve yazılım kısmıyla beraber adım adım anlatıyor. Umarım faydası dokunur.
https://www.youtube.com/playlist?list=P ... 45f750nHhu