B / S Moduna Dayalı "İyi Tasarım Kağıdı" Gömülü Sistem Test Yöntemi ve Uygulaması

Özet: Dağıtık test sistemlerinin araştırma ve geliştirme ihtiyaçlarına yanıt olarak, ağ iletişim teknolojisi, veritabanı teknolojisi ve gömülü teknoloji entegre edilerek B / S (Tarayıcı / Sunucu) moduna dayalı gömülü bir test sistemi oluşturulur. Web sunucusu Boa, hafif veritabanı SQLite ve ağ saati senkronizasyon protokolü NTP (Ağ Zaman Protokolü) nakledilerek tam bir test sistemi gerçekleştirilir. Sistemin ön ucu gerçek zamanlı grafik web sayfası görüntüsünü benimser ve sayfanın kısmi dinamik yenilemesini gerçekleştiren ve insan-bilgisayar etkileşimi sürecini optimize eden arka uç ile iletişim kurmak için Ajax asenkron veri iletimini kullanır. Test sistemi yerel alan ağı deneyi ile doğrulanmış ve iyi sonuçlar elde etmiştir.Beklenen hedefleri karşılar.B / S moduna dayalı gömülü dağıtılmış test sistemlerinin gelecekteki gelişimi için temel oluşturur ve belirli bir referans değerine sahiptir.

Çince alıntı biçimi: Chen Juan, Li Yuan, Li Wanguo. B / S moduna dayalı gömülü sistemin test yöntemi ve uygulaması.Elektronik Teknoloji Uygulaması, 2016, 42 (2): 50-52, 56.

İngilizce alıntı biçimi: Chen Juan, Li Yuan, Li Wanguo. Embe'nin ölçüm yöntemi ve uygulaması gg B / S moduna dayalı ed sistemi. Application of Electronic Technique, 2016, 42 (2): 50-52, 56.

0 Önsöz

Dijital bilgi teknolojisinin hızla gelişmesiyle birlikte, gömülü sistem cihazlarının sayısı genel amaçlı bilgisayarların sayısını çok aştı ve PC sonrası dönem geldi. Gömülü sistem ekipmanı, ağ iletişimi, tüketici elektroniği, endüstriyel kontrol ve ölçüm ve kontrol gibi birçok alanda yaygın olarak kullanılmaktadır.

Gömülü teknolojinin test alanında uygulanması giderek daha olgun hale geliyor, ancak farklı özel uygulamalar nedeniyle, birleşik bir yazılım geliştirme çerçevesi oluşturmak zordur. Lu Guoyong, Shi Xianglong ve diğerleri, gömülü sistemlerde Ajax asenkron etkileşimi ve CGI (Yorum Ağ Geçidi Arayüzü) ortak ağ geçidi uygulamasını analiz ederek, sunucu üzerindeki yükü azalttı ve istemci ile sunucu arasındaki etkileşim hızını iyileştirdi. Liu Limei, Zhou Xiancheng ve diğerleri, gömülü yazılım test sisteminin tasarımını ve uygulamasını araştırdılar ve gömülü yazılım dinamik test sisteminin pratik bir yapı çerçevesi önerdiler. Cai Yong, Wang Yong ve diğerleri gömülü SQLite veritabanına dayanıyor 3.0 Teknoloji, ölçüm ve kontrol sistemini tasarladı, gömülü veritabanının özelliklerini ve anahtar teknolojilerini analiz etti ve uygulama ve transplantasyon yöntemlerine odaklandı. Zhang Zhen, Wang Xiaoning ve diğerleri, gömülü Web sunucusu Boa'nın transplantasyonu ve uygulamasını araştırdılar ve kontrol alanında uzaktan yönetimini gerçekleştirdiler. Bu makale, öncekilerin teknolojisini bütünleştirir ve genişletir ve B / S ölçüm ve kontrol modeline dayalı nispeten olgun bir yerleşik yazılım mimarisi önerir ve yazılım uygulaması ve geçiş sürecinin daha kapsamlı bir tartışmasını ve özetini yürütür. Son olarak, bir dizi somut ve uygulanabilir uygulama planı sağlanır.

1 Genel yapı

Sistem, B / S yazılım mimarisi modunu benimser.Sunucu ucu, Web servisi ve veritabanı depolama yeteneklerine sahip gömülü bir test sistemidir ve Tarayıcı ucu, W3C ile uyumlu standart bir tarayıcıdır.

Kullanıcı, Web sayfası aracılığıyla sunucuda oturum açar ve yapılandırma ve test gibi kontrol komutları verir; sunucu, kullanıcının isteğine yanıt verir, ilgili CGI hizmet programını çağırır ve test sonuçlarını dinamik olarak kullanıcı Web sayfasına döndürmek için Ajax asenkron veri iletimini kullanır ve ön uç bir dalga biçimi benimser Verileri eğriler ve işaretçiler gibi çeşitli biçimlerde görüntüleyin.

1.1 Donanım yapısı

Sistem donanım yapısı 4 bölüme ayrılmıştır: gömülü test sistemi, çapraz derleme sistemi, test edilmiş nesne dağıtıcısı ve saat senkronizasyon sistemi. Gömülü test sistemi ARM11-S3C kullanır 64 10 işlemci, işletim sistemi çekirdeği Linux2.6.3.8'dir. Çapraz derleme sistemi ve gömülü test sistemi, NFS (Ağ Dosya Sistemi) ağ dosya sistemini, TFTP (Önemsiz Dosya Aktarım Protokolü) dosya aktarım protokolünü, seri bağlantı noktası iletişimini ve sistem hata ayıklaması, program aktarımı ve alt bilgisayarlarla iletişim için diğer protokolleri kullanır. Gömülü test sisteminin röle modülü ve AD dönüştürme modülü, test edilen dağıtıcıya iki iletişim kablosu üzerinden bağlanır.Sistem uyarma üretir ve dağıtıcı tarafından döndürülen test sonucunu okur. Gömülü test sistemi, NTP protokolü aracılığıyla harici bir saat sunucusuyla senkronize edilir ve bu, dağıtılmış bir test sistemine gelecekteki genişletme için birleşik bir saat düzeltme hizmeti sağlayabilir. Sistem donanım yapısı Şekil 1'deki gibi gösterilmiştir.

1.2 Yazılım yapısı

Test sistemi yazılımı, B / S mimari modelini benimser ve yazılım 3 katmanlı bir yapıda tasarlanmıştır. Tüm yapı üç bölüme ayrılmıştır: üst katman, orta katman ve alt katman: üst katman, kullanıcı talimatlarını almaktan ve dinamik verileri görüntülemekten sorumlu olan kullanıcı arabirimi arabirimidir; orta katman Web sunucularından ve veritabanlarından oluşur ve Web hizmetleri ve veri depolama gibi işlevleri sağlamaktan sorumludur; Donanım sürücüsü ve test uygulaması oluşturulur ve temel işlev çağrıları sağlanır.

2 İşlev ve gerçekleştirme

Yukarıda bahsedilen donanım yapısı ve yazılım yapısına göre test sisteminin her bir parçasının işlevlerini tasarlar ve gerçekleştirir. Bu tasarımın temel modülleri aşağıda ayrıntılı olarak açıklanmaktadır. Sistem işlev modülü tasarımı Şekil 2'de gösterilmektedir.

2.1 Kullanıcı arayüzü tasarımı

Kullanıcı arayüzü tasarımı temel olarak 4 işlevsel modüle ayrılmıştır: kullanıcı kimlik doğrulama modülü, temel bilgi tarama ve test ekipmanının yapılandırma modülü, dinamik veri görüntüleme modülü ve geçmiş veri tarama modülü.

Kullanıcı kimliği doğrulama modülü, sistemin güvenliğini güçlendirir ve iki yetki moduna ayrılır: sıradan kullanıcı ve yönetici. Temel bilgi tarama modülü ve yapılandırma modülü, sunucu IP adresi, istemci IP adresi, ana bilgisayar adı, çekirdek sürümü ve diğer bilgiler gibi cihazın temel bilgilerini almak için temel CGI programını arayacaktır; dinamik veri görüntüleme modülü, verileri sayılara dönüştürmek için açık kaynaklı Flot Javascript eklentisini kullanır , Metre ve eğriler. Ön uç ve arka uç veri alışverişi, sayfayı dinamik olarak güncellemek için Ajax eşzamansız iletişim teknolojisini kullanır; geçmiş veri görüntüleme modülü, arka plan veritabanının geçmiş verilerini çağırdıktan sonra ön uç sayfayı güncellemek için Ajax eşzamansız iletişim kullanır ve geçmiş veri dosyasını otomatik olarak CVS formatında oluşturur ve bu dosya indirildikten sonra kullanıcı tarafından kullanılabilir. veri analizi.

2.2 Web sunucusu, veritabanı tasarımı

Bir B / S modu test sistemi oluşturmak için, sistemin Web hizmetleri sağlama ve deneysel verileri yönetme becerisine sahip olması gerekir. Bu bölüm, sunucu ve veritabanının uygulama sürecini detaylandırır.

2.2.1 Gömülü Web Sunucusunun Tasarımı

Şu anda, gömülü aygıtlarda yaygın olarak kullanılan Web sunucuları arasında Boa, thttpd, Mini_httpd, vb. Bulunmaktadır. Aynı donanım koşulları altında, Boa daha hızlı işlem hızı, düşük bellek gereksinimleri, düşük enerji tüketimi gösterir ve CGI komut dosyası programlarını destekler.

Ana geçiş adımları aşağıdaki gibidir: (1) ARM mimarisi altında yürütülebilir Boa dosyasını oluşturmak için kaynak kodunu derleyin. (2) Sunucu yapılandırma dosyasının ilgili parametrelerini değiştirin: DocumentRoot (test sayfası belge yolu), ScriptAlias (test CGI komut dosyası yolu).

Şekil 3, sunucu dosyası dağıtım dizinini göstermektedir: boa.conf içindeki parametreleri aşağıdaki şekilde değiştirin: DocumentRoot / Testwww; ScriptAlias / cgi-bin / / Testwww / CGIScripts /. Sayfalar dizini esas olarak HTML web sayfası dosyalarını ve JavaScript komut dosyalarını dağıtır; CGIScripts dizini, veritabanı sorgu komut dosyaları, veri test komut dosyaları, temel cihaz bilgilerini elde etmek için komut dosyaları vb. Tablo, temel ekipman bilgi tablosu. Katalog tasarımı, belge düzenleme ve yönetimi için daha elverişlidir.

2.2.2 Gömülü veritabanı tasarımı

Gömülü cihazlarda yaygın olarak kullanılan veritabanları arasında mSQL, SQLiteDB vb. Bulunur. Karşılaştırmadan sonra, açık kaynak veritabanı SQLiteDB seçilir ve yeterince küçük olan 2 TB veritabanı boyutunu destekler ve kodun tamamı şu anda en popüler veritabanlarından daha hızlı olan 250 KB'dir.

Geçiş adımları aşağıdaki gibidir: (1) Yürütülebilir bir dosya dizini oluşturmak için kaynak kodu paketini derleyin. (2) Derlenmiş bin, include ve lib dizinlerini NFS dosya sistemi aracılığıyla ilgili gömülü dosya sistemine kopyalayın.

Kullanıcı varlıklarına, ekipman temel bilgi varlıklarına, geçmiş veri testi bilgi varlıklarına bölünmüş talep analizi ve tasarım veritabanı varlık nesnelerine göre ve son olarak ilgili veri tablolarını tasarlar. Şekil 4, kullanıcı varlığının E-R diyagramını göstermektedir.

2.3 CGI, Ajax asenkron iletişim tasarımı

Sistem sayfaları ve kullanıcılar arasındaki dinamik etkileşimi güçlendirmek için, sistem CGI ve Ajax çözümlerini kullanır. Sunucu tarafında dinamik web sayfaları yayınlamak için CGI teknolojisini kullanın ve web sayfalarını manuel olarak güncellemeye gerek kalmadan web sayfalarının kısmi otomatik yenilenmesini sağlayan dinamik web işlevini gerçekleştirmek için Ajax'ın XMLHttpRequest bileşeniyle etkileşim kurun. Bu, bu sistemin ön planı ve arka planı arasındaki veri iletişiminin ana yoludur.

İş akışı aşağıdaki gibidir: (1) Kullanıcı, bir Web tarayıcısı aracılığıyla katıştırılmış sunucudaki konuşlandırılmış test sayfasına erişir ve sunucu, tarayıcı isteğine yanıt verir ve bir JavaScript komut dosyası içeren bir Web sayfası döndürür. (2) Tarayıcı, dönüş sayfası kodunu ayrıştırır ve görüntüler ve katıştırılmış JavaScript komut dosyası programını çalıştırır. (3) Kullanıcı tarafından tarayıcıya girilen veriler önce JavaScript programı tarafından işlenir ve ardından XMLHttp İstek nesnesi aracılığıyla sunucuya zaman uyumsuz bir istek gönderilir. Sunucu istek parametrelerini ayrıştırdıktan sonra, veritabanını test etmek veya erişmek için ilgili temeldeki sürücüyü çağırır ve elde edilen verileri tarayıcıya XML biçiminde döndürür. (4) Tarayıcı, verileri responseXML yöntemiyle alır ve ardından kullanıcı arayüzünü DOM belge nesne modeli aracılığıyla günceller.

2.4 Test sistemi saat senkronizasyon tasarımı

Yukarıda tartışılan, tek bir test sisteminin ağ oluşturmasıdır ve B / S mimarisi dağıtılmış bir test sistemi oluşturabilir. Dağıtılmış bir sistemde, sistemdeki çeşitli olayların sırasını belirlemek, çeşitli mesajların iletimini koordine etmek, sistemdeki çeşitli bileşenlerin saat senkronizasyonunu gerektiren sistemin durumunu kontrol etmek ve izlemek için genellikle küresel bir zamana ihtiyaç vardır. Yerel saat birliğini sağlayın.

2.4.1 Ağ saati senkronizasyon protokolü

Yaygın olarak kullanılan ağ zaman senkronizasyonu protokolleri esas olarak NTP (Ağ Çalışma Protokolü), SNTP (Basit Ağ Çalışma Protokolü) ve PTP'yi (Hassas Zaman Protokolü) içerir Tablo 1, üçünün kapsamlı bir karşılaştırmasıdır.

Protokolün senkronizasyon zaman doğruluğu ve uygulanmasının zorluğu göz önünde bulundurularak test ağında saat senkronizasyon protokolü olarak NTP kullanılmasına karar verildi. NTP zaman senkronizasyon modları 4 türe ayrılır: istemci / sunucu modu, eş modu, yayın modu ve çok noktaya yayın modu. Sistem, istemci / sunucu modelini benimser.

2.4.2 Tasarım şeması

İlk olarak, saat kaynak sunucusu olarak bir Windows 7 işletim sistemi ana bilgisayarı ve senkronize nesneler olarak iki katıştırılmış test cihazı kullanarak bir test ağı oluşturun. Üç düğüm, yerel bir test ağı oluşturmak için yönlendiricilerle bağlanır.

İkinci olarak, saat kaynak sunucusunu yapılandırın ve NTP protokolünü gömülü test ekipmanına aktarın. (1) Windows saat sunucusu için, harici NTP hizmetleri sağlamak için yalnızca kayıt defterinin karşılık gelen parametrelerini değiştirmeniz gerekir. (2) Gömülü test sistemi, NTP protokolünün istemcisi olarak görev yapacak ve önce NTP protokolünün nakledilmesi gerekir. Ardından, ntp.conf yapılandırma dosyasına 192.168.1 ifade sunucusunu ekleyin. 131 , Saat sunucusunun IP adresini belirli IP parametrelerine göre ayarlayın. (3) Tümleşik sistem ntpd'yi bir önyükleme hizmeti olarak ayarlayın ve /etc/init.d/rcS'ye aşağıdaki ifadeyi ekleyin: ntpdate 192.168.1. 131 ; /Etc/init.d/ntpd. İlk olarak, ntpdate, sunucu ve istemci zamanının ntpd güncellemesinin başarısız olmasına neden olacak kadar büyük olmasını önlemek için bir zaman düzeltmesi gerçekleştirecek ve ardından ntpd hizmetini başlatacaktır. 64 s saati otomatik olarak bir kez güncelleyecektir ve saat senkronizasyonu hata aralığı, yerel alan ağının koşulu altında 1 ~ 10 ms arasındadır.

3 Deneysel sonuçlar ve analiz

B / S modu gömülü test sisteminde oturum açmak için bir tarayıcı kullanın. Şekil 6, test verilerini gerçek zamanlı görüntüleme sayfasını gösterir, sol taraf dinamik bir dijital ekrandır ve anormal veriler renkle gösterilir ve sağ taraf, verileri daha sezgisel bir şekilde görüntülemek için sayaç görüntüleme modudur. Şekil 7, verilerin zaman içindeki eğilimini görsel olarak gösteren dalga formu grafik görüntüleme sayfasıdır.

4. Sonuç

Gömülü B / S modu test sisteminin yapımı ve ARM platformuna dayalı test programı tasarımı sayesinde, bu makale sunucu yapısını, veritabanı yapılandırmasını, ön ve arka veri aktarım yöntemlerini ve gelecekteki çoklu test alt sistem ağının saat senkronizasyonunu tartışmaktadır. Detaylı açıklama. Alt düzey veri toplamadan veri depolamaya ve üst düzey veri ekranına kadar, distribütörün test görevi iyi bir şekilde tamamlanır ve son olarak gömülü bir test sistemi oluşturmak için bir dizi uygulanabilir şema önerilir. Bu makaledeki araştırma, gelecekte B / S modunun dağıtılmış uzaktan ölçüm ve kontrol sistemini gerçekleştirmek için iyi bir temel oluşturmaktadır ve belirli bir referans değerine sahiptir.

Referanslar

Lu Guoyong, Shi Xianglong. Gömülü Linux ve Ajax teknolojisine dayalı web asenkron etkileşim tasarımı Bilgisayar Uygulamaları, 2013, 33: 247-251.

Wang Baozhong, Ma Cheng. CGI Teknolojisine Dayalı Gömülü Dinamik Web Araştırması ve Uygulaması. Elektronik Tasarım Mühendisliği, 2012, 20 (18): 161-163.

Liu Limei, Zhou Xiancheng, Shi Biao. Gömülü Yazılım Test Sisteminin Tasarımı ve Uygulanması Yabancı Elektronik Ölçüm Teknolojisi, 2008, 27 (1): 59-61.

Cai Yong, Wang Yong.Ölçme ve kontrol sistemi tasarımında gömülü veritabanı SQLite uygulaması Elektronik Test, 2011 (10): 89-93.

Zhang Zhen, Wang Xiaoning, Zhang Yuan. Gömülü Web Sunucusu Taşıma ve Test Etme Elektronik Tasarım Mühendisliği, 2010, 18 (6): 1-3.

yazar bilgileri

Chen Juan 1, 2, Li Yuan 1, Li Wanguo 1

1. Makine Mühendisliği ve Otomasyon Okulu, Beihang Üniversitesi, Pekin 100083, Çin; 2. Ulusal Havacılık ve Uzay Akıllı Kontrol Teknolojisi Anahtar Laboratuvarı, Pekin 100854, Çin

Günaydın Wuhan | Wuhan'daki bu birimler sorun yaşayacak! Acele et ve etrafında böyle bir şey olup olmadığına bak
önceki
Sci-tech Innovation Board bugün açılıyor! Bireyler nasıl yatırım yapar? Nasıl yenisi yapılır?
Sonraki
Çirkin sevimli "Nezha" yaz dosyalarını karıştırıyor, "Guoman Universe" çıkmaya hazır
"AET Original" TI'nin benzersiz silah DLP teknolojisi, bir sonraki öldürücü uygulama nedir?
Sıcakta şehri korumak için ter kullanıyorlar
Malezya'daki T2 Elmas Turnuvasının ertesi günü: Fan Zhendong, Ding Ning, Zhu Yuling ilerliyor, Liang Jingkun elendi
"İyi Tasarım Kağıdı" OFDM sistemi için yaklaşık olarak tek tip dinamik paket uyarlamalı modülasyon algoritması
TOP1 yaz net ünlü soda çıktı! Bayan abla tek nefeste 10 çeşit çarptı.
"AET Original" Arm ve China Unicom, yeni bir IoT platformu oluşturmak için el ele verdi
Dünya Yüzme Şampiyonası'ndaki 3 metrelik sıçrama tahtası Çin takımı şampiyonayı süpürdü ve ikinci Shi Tingmao üst üste üç şampiyonluk kazandı
Üniversite kabul ilanının "görünen değeri" ve "çağrışımı" nedir?
Bu yaz bu Wuhan çocukları deneyimsel öğrenme yoluyla dramayı öğreniyor
5G Araçların İnterneti Teknolojisi ve Standart İlerleme
Çöpü kuraklığa dayanıklı kovaya atarsınız ve ağaç suya bakar! Lütfen namlu üzerinde "Kuraklığa Özel" yazısına bakınız.
To Top