軟體 : QT4.4.0
qmake是Trolltech提供的一套簡化在不同平台進行專案的"build(建立)"流程的工具。
qmake is a tool from Trolltech that helps simplify the build process for development project across different platforms.
拿QT所提供的範例來做示範,在QT位置所在的資料夾的 examples/qmake/tutorial中有:
hello.h
hello.cpp
將這兩個檔案copy到C槽,並新建一個"hello"的資料夾來存放這兩個檔案,

打開程式集中的QT4.4.0 Command Prompt

切換到C:\hello

qmake -project =>生成hello.pro,告訴qmake與開發專案相關的souece與header檔的部份。


hello.pro的內容:
######################################################################
# Automatically generated by qmake (2.01a) ??? ?? 2 08:09:11 2008
######################################################################
TEMPLATE = app
TARGET =
DEPENDPATH += .
INCLUDEPATH += .
# Input
HEADERS += hello.h
SOURCES += hello.cpp main.cpp
qmake => 生成Makefile文件


此時debug與release兩個資料夾還是空的,

nmake(亦可用make,取決於所使用的compiler) =>執行Makefile中的命令,

此時debug資料夾中出現hello.exe

cd debug =>進入debug資料夾
hello =>運行编譯鏈接好的exe文件

執行的hello.exe

fishark 發表在
痞客邦
留言(3)
人氣()

First Call是一個有趣的功能,
在程式碼區塊(如Loop結構)執行的第一次會傳出一個TRUE值,
但之後便會傳出False,
因此如果想在執行程式迴圈的第一次做特別或獨立的功能,
First call會是一個不錯而簡單的選擇。
fishark 發表在
痞客邦
留言(0)
人氣()

這是一個不用使用到Vision Development Module就可以讀JPG檔的範例,
而且是LabVIEW基本的功能之ㄧ,
同樣的,也可以讀BMP與PNG檔,
使用軟體 : LabVIEW 8.2
Front Panel
fishark 發表在
痞客邦
留言(3)
人氣()

Waveform Chart 顯示數據的更新方式有3種模式,分別是:
0 : Strip Chart
1 : Scope Chart
2 : Sweep Chat
每一種的顯示效果用影片來說明
fishark 發表在
痞客邦
留言(0)
人氣()

這應該是在將外界訊號接入DAQ卡時要注意的一件事,
不然會讀出錯誤的奇怪訊號,
主要有幾種接法,分別為:
1. Differential (DIFF)
2. Single-Ended —Ground Referenced (RSE)
3. Single-Ended —Nonreferenced (NRSE)
這些資訊在任何一張DAQ卡的Manual都可以找到,
只不過我常會忘記,要常去找來看,所以就在這裡做個備忘,
fishark 發表在
痞客邦
留言(0)
人氣()

FeedBack Node回授節點,
可以將輸出的值傳回輸入的計算中,
跟shift register有點像,
不過在初始值的地方還是有些不一樣,
我分別用Feedback node與Shift register作一個範例的比較,
fishark 發表在
痞客邦
留言(2)
人氣()
介紹
工業自動化應用方案,通常需要結合電腦架構的運動控制與機器視覺。這些應用往往又要求産品標籤的自動化檢測,以確保其精確性。整個應用方案的第一部分已於 1 年多前準備待續:NI 的 PCI 影像擷取卡與 IMAQ Vision 軟體。最近 NI 又爲這一「拼圖」提供了另一部分:運動控制産品。如今,Graftek Imaging 公司爲 LabVIEW 提供光學字元識別功能 (OCR),並完成了整個「拼圖」。在這篇文章中,我們將介紹 LabLRead 系統;集結 LabVIEW 機器視覺、運動控制,與 OCR 的系統,已發表給醫藥工業的客戶使用。
系統要求由於美國食品和藥物管理局 (FDA) 的嚴格規定,因此建立此套系統以製作高精確度的醫藥産品標籤。美國政府一直在努力降低藥品標籤錯誤的可能性,以防止錯誤的藥物或其他用途單一的醫療産品流入醫院和病人手中。醫療産品公司正逐步使用完善的自動化系統來取代人工檢測,因爲人工檢測既繁瑣又容易出錯。在這特殊的半自動化應用系統中,我們只需在自動化加工線上的産品發生改變時,等産品下線後對其標籤進行檢查即可。客戶下一步將計劃添增連續性的線上檢測。
這些受檢産品最終將在醫院中使用。醫藥產品以「層層疊加」的方式生産,即一疊疊由 2 到 8 個單元串連而成。要核對這些堆砌在一起的不同産品標籤內容與顔色,即為Graftek的一大挑戰。由於辨認標籤內容需要極高的精確度,最經濟的方法就是把每個産品逐一移到相機鏡頭視野範圍內進行檢測。因此必須使用 LabVIEW 架構的運動控制系統。
fishark 發表在
痞客邦
留言(0)
人氣()
研華發表工業電腦Mini-ITX專用系統方案編譯:林蔚文 / 報導關鍵字:
embedded ePlatform |
Mini-ITX |
研華
近日研華發表新一代6000系列Mini-ITX專用系統。全新6000系列的三款型號中,最精巧的6310,體積僅有232 x 65 x 232 mm,支援Intel Pentium M處理器、無風扇設計、2.5吋的抗震式硬碟、80瓦電源以及14~24伏特之直流電源。
研華表示,Mini-ITX是目前工業電腦主機板中最小的尺寸,一般工業電腦主機板的優點在於該板上許多組裝孔位都與標準工業電腦機箱吻合,相較於ATX,Mini-ITX更具備小尺寸的優勢及低耗電量。市面上的Mini-ITX主機板不勝枚舉,但多應用於如家庭娛樂或Thin Clients等特定領域,並不適合工業用途。此外,一般相容Mini-ITX的電腦機箱也缺乏標準工業級的彈性化、高度模組化,無法兼顧小體積、高彈性與功能性。
新一代工業電腦主機板的考驗:體積更小、功能更齊全
由於Mini-ITX具備比ATX更精簡的尺寸,支援更豐富的規格,如:影像處理、網路連線、I/O連接埠、USB 2.0、SATA、PS/2與PCI介面等等;更可值入儲存設備,將Windows、Linux及相容的應用程式等等,都內建在Mini-ITX主機板中。然而,最大的挑戰則是來自於如何將其裝進小體積的機箱中,並在各種嚴酷的環境中,維持穩定的運作效能。
精簡型、擴充型的專用機箱
Mini-ITX入門級系統僅需一片主機板,搭配低耗電的Pentium M行動處理器,如果不需要擴充PCI卡僅需使用內建的介面,即可組裝成一款無風扇的嵌入式系統,大多數具有預期效能的應用都可以選擇這種精簡型Mini-ITX專用機箱。而當系統需要高度擴充性時,則必須選擇機箱高度能夠裝進PCI擴充卡的款式。因此,若僅提供一款機箱尺寸選擇勢必無法滿足多變的產業應用。
Mini-ITX最佳解決方案: 研華嵌入式電腦 6000系列
近日研華發表新一代6000系列Mini-ITX專用系統用機箱,承襲了研華嵌入式電腦的高模組化能力、高擴充性以及輕巧體積,提供入門級與高效能擴充型的解決方案。全新6000系列的三款型號中,最精巧的6310,體積僅有232 x 65 x 232 mm,支援Intel Pentium M處理器、無風扇設計、2.5吋的抗震式硬碟、80瓦電源以及14~24伏特之直流電源。
6610提供各種擴充設備足夠的空間,內建3.5吋硬碟、可加裝抗震式薄型CD/DVD光碟機。其PCI擴充槽可輕易地從於前方面板管理,配備ATX電源供應器可讓Mini-ITX主機板搭載效能更高的中央處理器。
新上市的研華嵌入式電腦 6000系列,提供空間有限的應用環境中建構穩定的專案系統。搭載研華Mini-ITX主機板,不但具有多樣化的外觀、充足的I/O連接埠、低耗電量等多項市場最需要的功能,將是最適合快速成長新興市場中之最佳平台。
fishark 發表在
痞客邦
留言(0)
人氣()
本篇是使用Mathscript Window與Mathscript Node兩種方式來讀取與寫入WAV檔,
在找尋網路上的資料與查詢NI的文件後,
發現已經有寫好的範例,所以我只是引用範例作一下介紹,
軟體 : LabVIEW 8.2
方法一.
Mathscript Window
打開Mathscript Window,將下列程式碼複製至Command Window中,然後按下Enter,
%*****************************************************
t = 0:0.01:10*pi;
z = sin(50*t.^2);
wavplay(z')
wavwrite(z, 'C:\TMP\chirp');
clear z;
pause(2);
z = wavread('C:\TMP\chirp');
wavplay(z)
plot(t, z)
%*****************************************************
注意要在C槽建立一個TMP資料夾,然後增加一個chirp.wav 在這個資料夾之中,
執行結果如下:
方法二.
Mathscript Node
這是NI提供的範例程式,不過我忘了網址,不過在網路上找找看應該找的到,
其程式碼內容如下:

Front Pannel
fishark 發表在
痞客邦
留言(0)
人氣()

LLB是管理VI很好的工具,
一般中大型的LabVIEW程式,往往會有許多的Sub VI,
當你打開主程式時,LabVIEW會去尋找主程式中所需的Sub VI,
當程式從一台電腦轉移到另一台電腦時,
Sub VI轉移的完整性會影響你是否能成功地執行程式,
所以一般為了方便,會將主程式與其Sub VI存成一個LLB檔。
軟體:LabVIEW 8.2
1. 首先是如何開啟LLB Manager,
2. 任意選擇一個.llb檔,其中會有主程式與相關的Sub VI,
3. 如何建立llb呢?首先開一個空白的VI,選擇Save As 存檔,
4. 選擇你想要存檔的路徑後,按下New LLB,
5. 輸入LLB的儲存檔名,
6. 接者就會進入LLB,輸入你要儲存的VI檔名,按OK。
然後在LLB Manager中到你所儲存的路徑,打開my llb.llb,就可以看到裡面的內容。
fishark 發表在
痞客邦
留言(0)
人氣()
無論使用何種設計語言,不良的
程式技術都會為應用性能帶來負面影響,對
嵌入式應用尤其如此。儘管對大部份應用來說,高效率的程式技術是重要的,但對資源極度缺乏的嵌入式應用工作環境,則要求對性能和記憶體管理給予特別的關注。
本文將討論新的
LabView嵌入式開發模組,這種新工具為嵌入式應用開發人員提供了圖形化系統設計方法。該工具允許用戶直觀地設計演算法並進行互動式除錯。以下一些技巧將有助於程式設計師更有效使用LabView開發嵌入式應用。這些技巧也適用於其它高階工具。
動態分配記憶體技術:動態記憶體分配是一項程式設計師應盡可能避免的複雜作業。如果動態分配出現在將數據儲存到陣列的迴圈內則是特別不利的。避免在一個迴圈內動態分配記憶體的常用方法是在該迴圈開始執行前,為每個陣列預分配所需的記憶體空間。
移位暫存器與通道(tunnel)技術:LabView的移位暫存器與通道技術將使數據進/出迴圈。工程師可利用移位暫存器在一個迴圈的每次執行之間傳遞數據。當數據用一個輸入通道傳遞到一個迴圈時,LabView必須拷貝該數據並將該拷貝數據送出來以進行修改。這種做法可確保原始數據在下次迴圈執行時保持不變。工程師也可以透過一個移位暫存器把數據傳遞到該迴圈的方法來避免拷貝。如此將消除不必要的拷貝,因而加快執行速度。
迴圈中的大常數技術:如果在迴圈內部放置一個常數,會使迴圈在每次執行時都拷貝這個數據,因而加大執行時間和記憶體使用率。工程師可避免這個情況,做法是把該常數移出該迴圈,或者用本地變量把數據傳遞到迴圈中。
數據類型強制轉換技術:LabView開發環境只要有可能就能自動處理數據類型的衝突,其做法是把較小的數據類型轉換成較大的數據類型。例如,如果在一個整數和一個浮點數之間產生一個類型衝突,那麼LabView就把該整數轉換成一個浮點數,隨後再執行運算作業。這個轉換的代價是昂貴的,而且在許多情況下是不必要的。在大多數情況下,工程師可以透過為每個變量選取正確的數據類型來避免強制轉換。但是,如果該數據必須被強制轉換,則應在將其送去進行作業運算或函數運算前就完成轉換,如此將進一步提升效率。
fishark 發表在
痞客邦
留言(0)
人氣()
fishark 發表在
痞客邦
留言(0)
人氣()