Otomatik yükleme ve video izleme uzaktan kumanda sistemi

Li Zichang, Li Zhi, Guan Sihai

(Makine ve Elektrik Mühendisliği Okulu, Xidian Üniversitesi, Xi'an 710071, Shaanxi)

: Gömülü bir otomatik yükleme ve video izleme sistemi tasarlayın ve ağ üzerinden uzaktan kontrol gerçekleştirin. Sistem S3C2410 işlemciyi kullanır, Linux işletim sistemini aktarır ve S3C2410 üzerinde başarıyla çalışır. Video izleme modülü tarafından kullanılan kamera bir USB arayüzü biçimindedir.Yalnızca ilgili Linux sürücüsü nakledildiğinde kamera verileri normal şekilde toplayabilir. Libjpeg açık kaynak kitaplığını aktarın, donanımla sıkıştırılmış görüntüyü açın, görüntü terminalinde görüntüleyin ve ardından sahneyi gerçek zamanlı olarak izleyin. Otomatik yükleme modülünün gerçekleştirilmesi, ilk olarak beklenen mal yerleştirme yolunu ayarlar ve daha sonra, ekran terminalinde otomatik yükleme işlemini görüntülemek için Framebuffer çerçeve tampon ekran yazma teknolojisini kullanır. Soket ağ arayüzü aracılığıyla, üst bilgisayar sistemi uzaktan kontrol edebilir.

: S3C2410; Linux; video gözetim; otomatik yükleme; Libjpeg; Framebuffer; Soket

: TP13 belge tanımlama kodu: ADII: 10.19358 / j.issn.1674-7720.2017.01.001

Teklif formatı: Li Zichang, Li Zhi, Guan Sihai Otomatik yükleme ve video gözetim uzaktan kumanda sistemi J. Mikrobilgisayar ve Uygulama, 2017,36 (1): 1-3.

Şimdiye kadar, geleneksel endüstriyel alanda kargo yükleme, boşaltma ve yerleştirme işlemlerinin çoğu, çimento elleçleme gibi insan gücü [1] tarafından yapılmaktadır. Kötü çalışma ortamı ve ağır el emeği, personele büyük bir işgücü yükü getirmekte ve işçilerin sağlığına büyük zarar vermektedir. Nesnelerin İnterneti teknolojisinin güçlü bir şekilde gelişmesiyle birlikte, gerçek zamanlı video izleme ve otomatik yükleme ile bir sistem tasarlamak için gömülü teknolojinin nasıl kullanılacağı şu anda önemli bir konu haline geldi.

S3C2410 işlemci boyut olarak küçüktür ve kart alanından tasarruf edebilir; güç tüketimi çoğu yongadan çok daha düşüktür ve güç için özel gereksinimleri olan bir ortamda çalışmak için uygundur; ana frekans iyi gerçek zamanlı performansla 203 MHz'e ulaşabilir; bellek ile Bu nedenle yönetim birimi başka yere yerleştirilebilir ve daha karmaşık görevleri yerine getirmek için işletim sistemini çalıştırabilir [2]. Yukarıdaki özelliklere bağlı olarak S3C2410, sistemin ana denetleyicisi olarak seçilir. Linux işletim sistemi, birden çok kullanıcının oluşturulmasını ve birden çok görevi işlemeyi desteklemektedir [3], bu nedenle S3C2410 + Linux tabanlı gömülü sistem ilk tercih haline gelmiştir. Linux sistem çekirdeğindeki görüntü toplama cihazının arayüzü Video4Linux'tür.Bu arayüz temelinde, kendi tasarımımızla birlikte, ilgili fonksiyonlara sahip bir program geliştiriyoruz. Video4Linux'a dayalı olarak geliştirilen video edinim programı, basit arayüz, kolay uygulama ve kısa geliştirme döngüsü [4] özelliklerine sahiptir, bu nedenle geniş ilgi görmüştür. Libjpeg, görüntüleri JPEG formatında sıkıştırmak veya açmak için kullanılan açık kaynaklı bir kütüphanedir [5] Kütüphane tarafından sağlanan işlevler, açma işlemini tamamlamak ve geliştiricilerin iş yükünü azaltmak için tasarlanmış programda çağrılabilir. Framebuffer [6], Linux çekirdeğindeki kullanıcılar tarafından çağrılabilen bir işlev arabirimidir.Bu arabirim aracılığıyla, grafik aygıtları arabellek olarak kullanılabilir.Grafik aygıtlarının çalışması, gerçek arabelleklerinki ile tamamen aynıdır, böylece kullanıcılar, altta yatan hantal katmanlara dokunmaktan kaçınabilirler. Operasyon, geliştirmeyi kolaylaştırır. Ağ üzerinden uzaktan kontrol gerçekleştirmek için Soket arayüzünü kullanın.

Özetle, bu makale, aynı zamanda sitede video izleme işlevine sahip olan S3C2410 + Linux tabanlı gömülü bir otomatik yükleme sistemi önermektedir. İzleme ve yükleme sisteminin yazılımı Linux sisteminde geliştirildi, çekirdek sürümü 2.6.8.1 ve ilgili açık kaynak kitaplığı aktarıldı. Ek olarak, birçok kök dosya sistemi türü vardır.Bu sistem cramfs [7] kullanır Bu tür yalnızca okunabilir, yazılamaz ve bir veri koruma işlevi vardır. Programın gelişimi temel olarak sürücülerin ve açık kaynak kitaplıklarının aktarılması ve belirli işlevlere sahip programların uygulanmasından oluşur. Video izleme modülü üç bölümden oluşur: görüntülerin toplanmasından sorumlu zc301p USB arabirim kamerası, görüntü işlemeden sorumlu ana denetleyici ve videoyu görüntülemek için ekran terminali. Otomatik yükleme modülü esas olarak yukarıda bahsedilen ana kontrolör ve LCD ekran cihazından oluşur. Otomatik yükleme uygulama programı, simülasyon sürecinin yol planlaması ve görüntüleme ekranı programını yerleştirme programını içerir ve ağ üzerinden uzaktan kontrol edilir.

1 Video gözetim modülü tasarımı

Video gözetim uygulaması, görüntü verisi toplama işleminin tasarımını, görüntü açma işlevi çağrısını ve LCD görüntü ekranını içerir. Video verisi toplama işlemi, kamera verilerini belleğe okumak için Video4Linux arayüzünü [4] çağırır.

Cihazı başlattıktan sonra video görüntüsü çekilir. Video yakalamanın bir yolu, programın arabellek verilerini çıkarabilmesi için okuma işlevini kendi programına dahil etmektir; ikinci yol, verileri okumak için bellek eşleme yöntemini kullanmaktır ve tasarlanan program mmap işlevini içermelidir. Programdaki haritalama işlevini anlayın. Bellek eşleme yönteminin, erişim hızını büyük ölçüde artırabilen bellek paylaşımı gibi büyük bir avantajı vardır. Bu şekilde, dosyaya erişimin okuma, yazma, vb. Çağırması gerekmez ve her işlem, paylaşılan bellekteki verilerin güncellemesini zamanında görebilir ve böylece gerçek zamanlı performansı iyileştirebilir. Bu nedenle, sistem mmap bellek haritalama yöntemini kullanır.

1.1 jpeg verilerini Libjpeg ile açın

Bu sistem tarafından kullanılan Libjpeg kitaplığı libjpeg-v6b'dir, ancak libjpeg-v6b yalnızca dosya biçimi girişini destekler. Bu sistemde kullanılan kamera zc301p olduğundan, bu kamera tarafından toplanan veriler, donanım tarafından sıkıştırılan bir jpeg veri akışıdır ve toplanan veriler doğrudan bellekte depolanır. Ancak, Libjpeg kitaplığı bu tür girdileri desteklemez. Bu sorunun çözümü, Libjpeg kütüphanesinin kaynak kodunu, bellekteki jpeg veri akışını açabilecek şekilde değiştirmektir.

1.2 Video görüntüleme modülü

Görüntü modülü LCD ekran kullanır, her piksel 16 bit renkle temsil edilir, format RGB565, ancak veriler Libjpeg kütüphane işlevi ile açılır ve elde edilen görüntü GB888 formatındadır, yani 24 bit veridir, bu nedenle format dönüşümü gereklidir.

Bu sistemde kullanılan donanım aygıt kamerası tarafından toplanan tek bir resmin maksimum çözünürlüğü 640 × 480'dir, bu nedenle bellek eşleme yapılırken, eşlemenin iki boyut parametresi bu iki maksimum değer olmalıdır. Libjpeg tarafından sıkıştırılmış görüntü, giriş görüntüsü ile aynı çözünürlüğe sahiptir. Ekran çözünürlüğü 480 × 272 olduğundan, giriş 640 × 480 olduğunda görüntü ekranı boyutu aşılmış, görüntü gösterimi tamamlanmamıştır.Sonuç Şekil 1'de gösterilmiştir.

Libjpeg, yakınlaştırmayı ve sıkıştırmayı destekler. Üç tür yakınlaştırma oranı vardır: 1/2, 1/4 ve 1/8. Yakınlaştırma oranının 1 / 2'sini seçin, çözünürlük 320 × 240, bulanık ekranlar ve belirgin tarama izleri var, ekran efekti Şekil 2'de gösterilmektedir.

Yukarıdaki iki durum nispeten açık olsa da, genel etki iyi değildir. 1/4 yakınlaştırma oranı seçin, çözünürlük 160 × 120, resim net ve pürüzsüz, titreme yok, tarama izi yok ve Şekil 3'te gösterildiği gibi ekran efekti ideal.

1/8 yakınlaştırma oranını seçin, resim net ve pürüzsüz, ancak resim çok küçük ve bu gerçek zamanlı izleme için elverişli değil Ekran efekti Şekil 4'te gösterilmektedir.

Üç yakınlaştırma oranının kapsamlı analizi ve deneysel sonuçların karşılaştırılması, 1/4 yakınlaştırma oranının en iyi seçim olduğunu göstermektedir.

2 Otomatik yüklemenin tasarımı ve gerçekleştirilmesi

Otomatik yüklemenin gerçekleştirilmesi Framebuffer teknolojisine dayanmaktadır. Linux kernel fb_ops, Framebuffer ekipmanının [6] çalışmasını tanımlar.

Bu sistemde kullanılan geliştirme kartı modeli FS2410 ve işlemci S3C2410'dur.

Ekran terminali RGB565 formatını gösterdiğinden, çerçeve arabellek her bir piksele doğrudan değerler atayarak renkleri görüntüleyebilir.

Aşağıdakiler, gerçek çimentonun otomatik yükleme sürecini simüle etmek için çerçeve tamponunu kontrol etmek için simülasyon işlevini kullanır. Ekran terminal arayüzünü çimento yerleştirme alanı olarak görün ve tek bir çimento torbasını temsil etmek için beyaz bir dikdörtgen kullanın. Taşıyıcı banttan düşen çimento her seferinde aynı yere düşer, bu nedenle görüntüleme ekranında sabit bir alan çimento iniş yeri olarak seçilir. Burada LCD'nin sol üst köşesini seçin ve bu alanı periyodik olarak beyaz yapın. Görüntüleme ekranına iki boyutlu bir koordinat sistemi olarak bakıldığında, iniş yeri (0,0) 'dır ve ilk önce hat boyunca hareket etme ve yoldan sonra kolon boyunca hareket etme sırasına göre yerleştirilir.Gerçek hız problemi dikkate alınarak her hareket 1 geciktirilir. s. Bu süreç, bir döngü iç içe geçme süreci olarak modellenebilir, her bir özel konumun hareket etmesi gereken adım sayısını belirleyebilir ve düzenli bir şekilde yürütmeyi başarabilir. 480 × 272 görüntüleme ekranının çözünürlüğüne göre, her bir çimento torbasının kapladığı alanın boyutunu 60 × 80, sıra aralığı 16, sütun aralığı 10 yani sıra başına 7 torba, sütunda 3 torba ve tek katta 21 torba olarak ayarlayın. Farklı katmanları temsil etmek için farklı arka plan renkleri ayarlayın ve her katmanın yerleştirme yöntemi, kolay görüntüleme için aynıdır. Bu sistemde 3 katman tasarlanmıştır. İlk katman mavi bir arka plan ile temsil edilir ve yükleme etkisi Şekil 5'te gösterilir.

İkinci katman kırmızı bir arka plan ile temsil edilir ve yükleme etkisi Şekil 6'da gösterilir.

Üçüncü katman yeşil bir arka planla temsil edilir ve yükleme etkisi Şekil 7'de gösterilir.

Ek olarak, ana bilgisayarın çağırması için yüklenen miktarı kaydetmek için bir değişken tanımlayın.

3 uzaktan kumanda

ARM geliştirme kartı ile ana bilgisayar arasındaki ağ iletişimini gerçekleştirmek için soket kullanın. Ana bilgisayarı ve ARM geliştirme kartını bir çapraz ağ kablosuyla bağlayın, bir soket oluşturmak için soket programlamayı kullanın, sunucu / istemci erişim modunu, geliştirme kartını sunucu tarafı ve üst bilgisayarı istemci tarafı olarak benimseyin. İletişim gerçekleştirildikten sonra, üst bilgisayar, uzaktan kumandayı gerçekleştirmek için geliştirme panosunun çalışmasını ağ üzerinden doğrudan kontrol etmek için kullanılır.

İki taraf arasındaki iletişim sürecinde, bir dizi iletişim protokolü üzerinde anlaşmaya varılır. Bu makale simülasyonlu yükleme ve gerçek zamanlı izlemenin yalnızca iki işlevini gerçekleştirdiğinden, uzaktan kumanda sırasında yalnızca iki komut ayarlanabilir. A komutunun simülasyonlu yükleme, B komutunun ise gözetim videosu izlemek anlamına geldiği kabul edilmiştir. Bu iki komut aracılığıyla, alttaki bilgisayar üst bilgisayardan uzaktan kontrol edilebilir.

4. Sonuç

Bu yazıda önerilen gömülü otomatik yükleme ve video izleme sistemi, ana denetleyici olarak S3C2410 işlemciyi kullanır ve Linux sistemini çalıştırır.Basit uygulama ve güçlü ölçeklenebilirlik özelliklerine sahiptir. Gömülü video izleme sistemi sayesinde, yükleme işinin güvenli bir şekilde ilerlemesini sağlamak için yükleme sahasının durumunu görüntüleyebilir ve acil durumlara zamanında müdahale edebilirsiniz. Otomatik yükleme sisteminin tasarımı, gelecekteki gerçek sistem yapısının temelini oluşturur ve gelecekteki çalışmalar için büyük önem taşır.

Referanslar

1 Zhang Qingping, Su Guomin Süper büyük madenler için tam otomatik yükleme ve boşaltma sisteminin gerçekleştirilmesi J. Industry and Mine Automation, 2002 (6): 4142.

2 Peng Tiegang, Liu Guofan, Cao Shaokun, ve diğerleri. ARM tabanlı gömülü video gözetim sisteminin tasarımı J. Bilgisayar Mühendisliği ve Tasarımı, 2010, 31 (6): 11911194.

[3] Xu Qinglin, Xie Zhenglong, ARM J. Nesnelerin İnterneti Teknolojisine dayalı Linux sistem transplantasyonunun araştırılması ve uygulanması, 2013 (1): 3738.

4 Wang Yuanwei, Liu Guoxiu V4L J Bazında Video Edinim Sisteminin Tasarımı Demiryolu Bilgisayar Uygulaması, 2010, 19 (7): 3034.

5 HONG J, SODSONG W, CHUNG S, ve diğerleri.Libjpegturbo kütüphanesi için bir görev paralel JPEG kod çözücünün tasarımı, uygulaması ve değerlendirilmesi J. Oral Diseases, 2012, 12 (12): 117120.

6 Lei Hong, Xiong Wenlong, Yang Dan. Fram ebuffer'a dayalı LCD sürücüsünün uygulanması J. Journal of Wuhan University of Technology: Transportation Science and Engineering Edition, 2006, 30 (1): 106109.

7 Lu Jianxiang, Liu Chengan, Hu Hezhi, vb. S3c2410 J 'ye dayalı CramFS kök dosya sistemi nakli. Mikrobilgisayar Bilgileri, 2006, 22 (32): 133135.

Shigu Bölgesi: Yüksek kaliteli gelişimi teşvik etmek için "toplama, çıkarma, çarpma ve bölme" yöntemini uygulamak
önceki
Bu 9 maddelik drama kesildi, pek çok insanın kalbi kanıyor
Sonraki
Çırpma teli ile ne tür atıştırmalıklar yapılabilir, ev alırken nelere dikkat etmeliyim?
"Dunkirk": Churchill ve Hitler olmadan, 2. Dünya Savaşı'nın en hareketli filmi
Japonca versiyonu ile eşzamanlı olarak piyasaya sürülmesi hedeflenen "Yeni Sakura Savaşları" Çince versiyonu duyuruldu
Yarın geceki Google I / O, bu 6 önemli an için sabırsızlanmaya değer | Google I / O 2017
Sinemada demining "Yurtiçi Film Koruma Ayı" nı sizinle kutlamak için 6 yerli film
iPhone, Apple'ın en başarılı nakit ineği
Yalama Ekran Süresi | Elle Fanning, The Power of Lori
Quinte Etkinliği: Tarihin akışını değiştiren Stiga Kalesi Savaşı
Çözümleyici faz kayması kodlamasına dayalı "Çözümleyici" mühendislik tasarımı ve uygulaması
Yu Chengdong "Durağan" dedi. Daha önce inanmamıştım ama şimdi sessizce Weibo'ya döndüm ve bir beğeni ekledim
Zengin kadın Wu Yajun'un uzun vadeli ve kısa vadeli endişeleri: mükemmeliyetçinin emlak tel denge hattı
"P3D" ve "P5D" bağlantı kostümleri onaylandı! Sega IP'nin ilk çıkışı
To Top