什麼是上位機?上位機的開發軟體有哪些?

2022-01-09 電子菌

什麼是上位機?怎麼自己編程做一個上位機程序?這種概念問題還是建議大家百度之後,然後在知乎@電子菌,要不然問題太多,公子回復不過來!

 

言歸正傳,概念不懂,先看看百度百科的解釋:上位機是指可以直接發出操控命令的計算機,一般是,屏幕上顯示各種信號變化(液壓,水位,溫度等)。下位機是直接控制設備獲取設備狀況的計算機,一般是PLC/單片機之類的。上位機發出的命令首先給下位機,下位機再根據此命令解釋成相應時序信號直接控制相應設備。下位機不時讀取設備狀態數據(一般為模擬量),轉換成數位訊號反饋給上位機。簡言之如此,實際情況千差萬別,但萬變不離其宗:上下位機都需要編程,都有專門的開發系統。在概念上,控制者和提供服務者是上位機,被控制者和被服務者是下位機,也可以理解為主機和從機的關係,但上位機和下位機是可以轉換的。

 

說了這麼多,那麼上位機用什麼軟體工具開發呢?1、visualstudio 2008

    Microsoft Visual Studio 2008是面向Windows Vista、Office 2007、Web 2.0的下一代開發工具,代號「Orcas」,是對Visual Studio 2005的一次及時、全面的升級。VS2008引入了250多個新特性,整合了對象、關係型數據、XML的訪問方式,語言更加簡潔。使用Visual Studio 2008可以高效開發Windows應用程式。設計器中可以實時反映變更,XAML中智能感知功能可以提高開發效率。同時Visual Studio 2008支持項目模板、調試器和部署程序。Visual Studio 2008可以高效開發Web應用,集成了AJAX1.0,包含AJAX項目模板,它還可以高效開發Office應用和Mobile應用。


2、MFC

  是微軟公司提供的一個類庫(class libraries),以C++類的形式封裝了WindowsAPI,並且包含一個應用程式框架,以減少應用程式開發人員的工作量。其中包含大量Windows句柄封裝類和很多Windows的內建控制項和組件的封裝類。

3、Qt

    Qt是一個1991年由Qt Company開發的跨平臺C++圖形用戶界面應用程式開發框架。它既可以開發GUI程序,也可用於開發非GUI程序,比如控制臺工具和伺服器。Qt是面向對象的框架,使用特殊的代碼生成擴展(稱為元對象編譯器(Meta Object Compiler, moc))以及一些宏,Qt很容易擴展,並且允許真正地組件編程。2008年,Qt Company科技被諾基亞公司收購,Qt也因此成為諾基亞旗下的程式語言工具。


4、GTK

    GTK+(GIMPToolkit)是一套源碼以LGPL許可協議分發、跨平臺的圖形工具包。最初是為GIMP寫的,已成為一個功能強大、設計靈活的一個通用圖形庫,是GNU/Linux下開發圖形界面的應用程式的主流開發工具之一。並且,GTK+也有Windows版本和Mac OS X版。


5、wxWidgets

    wxWidgets是一個開源的跨平臺的C++構架庫(framework),它可以提供GUI(圖形用戶界面)和其它工具。目前的2.x版本支持所有版本的Windows、帶GTK+或MoTIf的Unix和MacOS。一個支持OS/2的版本正在開發中。開源跨平臺,和 CodeBlocks (開源跨平臺的IDE)配合的很好,而且可以用 wxSmith 很方便的設計界面。而且學過MFC上手 wxWidgets 很快。



相關焦點

  • 什麼是上位機,什麼是下位機?
    各位朋友需要看哪些資料可以在後天留言,小編儘量給您找,會以精彩內容回顧的連結方式,煩請點擊轉發
  • Qt 串口上位機開發《Rice 上位機 學習開發》
    前幾天分享了一個使用C#開發的串口上位機,那麼今天教你如何100行QT代碼實現一個串口上位機。
  • 如何使用Python開發串口通訊上位機(一)
    用Python開發串口通訊型上位機,其實並非最優解,本系列更新只為個人學習與總結。如果有C語言底子,嵌入式層面的上位機開發,C++ Builder,C#才是更加好用的利器。什麼是上位機從事過嵌入式軟體開發或者工控機開發的,對上位機應該都不陌生。
  • 連載丨手把手教你winform上位機系列一:認識winform上位機
    一般上位機分為工控機(Wincc,組態王,力控工業組態軟體),觸控螢幕(威綸通,臺達,西門子HMI等),和Windows桌面應用。今天要講的是Windows系統下的Winform桌面應用作為上位機,大家是不是用觸模屏和組態軟體是總是想實現一些特殊功能但是組態軟體本身不支持該功能,但是Winform可以做到你想做的一切,Winform是微軟Visual Studio IDE開發平臺下的桌面應用開發,我們可以充分利用C#高級語言的優勢和靈活性以及高擴展性來開發我們的上位機監控界面,先來個簡單
  • BLE的Android上位機開發(上)
    上篇BLE的Android開發小技巧(見帖:BLE4.0安卓上位機開發小技巧),但因為當時Android上位機還沒有完全開發完畢,BleLib開源包也用的不太熟練,因此沒有詳細的代碼說明。隨後就是漫長的出差,天天忙忙碌碌的沒時間弄。然而,就在昨天,就在昨天~我的Android上位機全部開發完畢啦~~(真是個舉國歡慶的日子啊。。)別的不多扯了,進入主題聊聊Blelib這個包怎麼用吧。
  • Matlab上位機開發(五)Matlab串口通信
    創建串口對象創建一個串口對象的API如下:scom = serial('<串口號>');串口號為COM8的形式,這個API有個缺點:不能自動檢測目前電腦中存在中的串口。觸發中斷的條件觸發串口Bytes available事件有兩種條件:當接收到的字符數達到指定的數目時(BytesAvailableFcnCount 屬性);當接收到指定字符時(Terminator 屬性);2.2.
  • 使用pycharm開發上位機配置pyqt5的環境
    在上位機的開發過程中,使用QT的圖形化界面,是開發上位機最好最簡單的選擇,因此我將講述配置pyqt5的環境。
  • Modbus TCP協議及上位機軟體編寫
    一、Modbus由MODICON公司於1979年開發,是一種工業現場總線協議標準。
  • C#上位機專題課程,計劃2月21號啟動
    掌握C#上位機開發的好處:1、產品設計時,快速開發測試上位機,提高產品開發效率;2、產品對接時,提供測試上位機,方便對方驗證硬體,提高溝通效率;3、產品生產時,提供測試上位機或參數寫入上位機,方便生產;4、熟練掌握後,在初始上位機模板基礎上進行設計,快到數小時即可開發出一款。
  • 手把手教你用Labview寫一個串口上位機
    LabVIEW是一種程序開發環境,由美國國家儀器(NI)公司研製開發,類似於C和BASIC開發環境,但是LabVIEW與其他計算機語言的顯著區別是:其他計算機語言都是採用基於文本的語言產生代碼,而LabVIEW使用的是圖形化編輯語言G編寫程序,產生的程序是框圖的形式。
  • 【C#上位機必看】你們想要的練手項目來了
    最近有越來越多做電氣的小夥伴開始學習C#來做上位機開發,很多人在學習一段時間後,都有這種感覺
  • 使用Vehicle Spy圖形面板快速搭建上位機
    在Graphical Panels視圖中有很多控制項,下面小編帶大家來簡單了解幾個常用的控制項。  LEDLED是圖形面板中最常用的控制項之一,可以被當作指示信號來使用,並且可以使用自定義的顏色。這種類型的按鈕對於選擇文件路徑是非常有用的。Graphical Panels支持的控制項還有很多,完全可以支持我們遇到的測試場景,工程師們可以使用這些控制項設計一款合適的上位機界面。 我們可以使用圖形面板中的各種控制項組合完成控制面板製作,從而獲得直觀便捷的控制效果。
  • 【原創】教你如何擁有自己的「串口」上位機
    串口對於開發調試是必不可少。不過有時候你會覺得用別人的串口工具會感覺到很痛苦。太多限制,太局限性,比如要抓取調試的LOG的某個欄位,要實時監控數據,要對接收到的數據進行解析,用sscom、putty、xshell等上位機都無法實現自己想要的功能。所以我們要定製畫一款屬於自己的上位機,來實現自己想要的功能,想怎麼搞就怎麼搞。
  • 這樣學上位機,是不是有意思多了
    收錄於話題 #上位機開發實踐 寫在前面 有小夥伴跟我說:為了兌現承諾,這次給大家安排一個小項目案例
  • 上位機難?那分享下我的經歷
    當時的我不會上位機,我一個人用了兩個月(後來因為項目小,但花了兩個月,導致後面我不被重用)把這個項目推到了尾聲,但上位機一直放在一邊,之前聊過,由於我的公司不正規,沒有正兒八經的培訓,一切靠自己。上位機沒人教真的有些難,當時我手上只有一個別的工程的上位機程序,一切只能靠自己去摸索,但工期越來越緊,留給我的時間不多,然而,轉折來了,在我自學的第五天,那時候我正卡在報警畫面上,項目經理和我說,甲方預算不夠了,上位機取消了,我當時特別高興,然而現在的高興實際上是很不應該的。
  • C#做一個簡單的進行串口通信的上位機
    上位機相當於一個軟體系統,可以用於接收數據、控制數據。                }            }            catch (Exception ee)            {                MessageBox.Show(ee.ToString());            }        }如果代碼沒有寫入try中,則可能出現的一種情況是比如有兩個上位機
  • 上位機-倒計時器
    這裡要注意的是用到的分別是什麼控制項:文本(label):定時時間,剩餘時間,0秒下拉列表(comboBox):下拉列表選擇定時時間。接著設置控制項的屬性——選中單擊控制項,在界面的左下角就可以看到該控制項的屬性,尺寸啊,顏色啊,字體的,顯示內容啊什麼都有,按著自己喜歡一一設置就可以了。還是比較簡單的。
  • 上位機儀錶盤實時顯示機器人速度
    後臺留言,大家一起支持原創,推動機器人使用和發展本公眾號對各類ABB機器人應用,仿真,畢業設計提供技術支持,詳細後臺留言本公眾號誠摯希望與各機器人培訓機構,機器人使用單元合作,提供技術支持,詳細後臺留言點擊文章最後的閱讀原文,即可獲得完整上位機儀錶盤實時顯示機器人速度
  • 上位機基於C#通過TCP/IP和庫卡機器人通訊
    ,支持TCP和UDP協議.但具體軟體的安裝以及初步通訊測試就不多做介紹了。這裡將庫卡機器人作為客戶端,上位機作為伺服器進行通訊。另外,對上位機發送到機器人的元素有做一些刪改。因轉載眾多,無法找到真正來源,如標錯來源,或對於文中所使用的圖片,資料,下載連結中所包含的軟體,資料等,如有侵權,請跟我們聯繫協商或刪除,謝謝!
  • BLE的Android上位機開發(下)
    (上篇的地址:BLE的Android上位機開發(上))廢話不多說了,先上主角吧!代碼如下![Java] 純文本查看 複製代碼?2、mBleService.setOnConnectListener這個回調函數在connect操作之後才會被調用,這裡的參數newState,主要有幾種類型(灰常重要):STATE_CONNECTED 設備已經連接STATE_CONNECTING 設備正在連接到androidSTATE_DISCONNECTED 設備已經斷開連接