濟南美雅圖機械設(shè)備公司

彈琴機械臂系統(tǒng)原理,彈琴機械臂系統(tǒng)原理圖

大家好,今天小編關(guān)注到一個比較有意思的話題,就是關(guān)于彈琴機械系統(tǒng)原理問題,于是小編就整理了1個相關(guān)介紹彈琴機械臂系統(tǒng)原理的解答,讓我們一起看看吧。

  1. 軟件是怎樣控制硬件的?

軟件是怎樣控制硬件的?

我覺得你是想問,軟件是怎么控制一個設(shè)備,如機器人、數(shù)控機床,讓它們執(zhí)行設(shè)定的動作的。不論怎么變化,軟件控制硬件,都離不開計算機的中央處理器CPU,或者單片機MPU。因為只有處理器才能把控制軟件的指令,傳遞到接口電路,最終控制目標(biāo)設(shè)備的動作。

以下介紹幾種我用過的控制方式。

彈琴機械臂系統(tǒng)原理,彈琴機械臂系統(tǒng)原理圖
(圖片來源網(wǎng)絡(luò),侵刪)

CPU有GPIO接口,MPU有P0~P4及更多的IO接口。這些接口,可以通過軟件設(shè)置,做為輸出、輸入口。

從CPU,MPU出來的控制信號一般不能直接控制目標(biāo)對象,比如最簡單的LED燈,電機等,必須經(jīng)過一些鎖存芯片、光電隔離芯片、繼電器、接觸器、信號驅(qū)動等電路,才能控制目標(biāo)的動作。一些成熟的電機驅(qū)動器,也可直接接收從處理器出來的輸出信號,只要用一些芯片進行信號轉(zhuǎn)換即可。

有的控制對象需要幾十、幾百個控制點,這樣P口就不夠用了。

彈琴機械臂系統(tǒng)原理,彈琴機械臂系統(tǒng)原理圖
(圖片來源網(wǎng)絡(luò),侵刪)

解決的方法,就是用擴展外部存儲器地址的方法,如使用E200H,E300H......這樣的擴展地址線,通過PLC、CPLD、FPGA等可編程器件,可以擴展出需要數(shù)量的控制輸出。

只有開關(guān)能控制硬件,程序員做軟件的時候都是要不停的按鍵盤,按的這些鍵盤按鍵其實就是開關(guān),只是這些開關(guān)的執(zhí)行順序被記錄起來了。當(dāng)你點擊啟動那個軟件的時候,其實就是程序員輸入的鍵盤按鍵順序(開關(guān))自動執(zhí)行了。

有人會問開關(guān)順序是怎么存儲的,請參考留聲機的原理。

彈琴機械臂系統(tǒng)原理,彈琴機械臂系統(tǒng)原理圖
(圖片來源網(wǎng)絡(luò),侵刪)

手機、智能電器、電腦、PLC、單片機等等,有一個共同的特點,就是他們都有構(gòu)成計算機系統(tǒng)的核心部件,CPU,存儲器和I/O接口。如下圖所示,以51單片機為例,軟件代碼安裝在程序存儲器,CPU,存儲器和I/O接口之間有三條高速通道,分別是控制總線,地址總線和數(shù)據(jù)總線。

CPU通過控制總線發(fā)布命令,通過地址總線選擇程序存儲器單元,代碼一條一條通過數(shù)據(jù)總線到達(dá)CPU譯碼器,根據(jù)代碼命令,由CPU協(xié)調(diào)各方,把數(shù)據(jù)從I/O接口輸入輸出,實現(xiàn)設(shè)備控制。

接下來我們從大到小,層層深入,以單片機為例,看看計算機內(nèi)部電路組成結(jié)構(gòu)。8051一位I/O口結(jié)構(gòu)如下圖所示??梢娖浜诵牟考且粋€D觸發(fā)器構(gòu)成的鎖存器。8個這樣的電路組成了P1接口。

計算機處理的數(shù)據(jù)就是1、0組合,實際上0、1就是低電平和高電平,說白了就是電壓信號。如下圖所示,計算機內(nèi)部電路常用的D觸發(fā)器,D觸發(fā)器的/S端為低電平,Q=D,信號從D傳送到Q,/R端為低電平,Q=0,復(fù)位。

D觸發(fā)器內(nèi)部主要元件就是與非門電路。那么與非門電路內(nèi)部什么樣呢?如下圖,為TTL與非門內(nèi)部電路,Y=/A.B,Y等于A與B的反。例如,A=1,B=1,Y=0,當(dāng)A=0,B=1,Y=1。1是高電平,0是低電平。當(dāng)然,TTL門電路***用晶體管,屬于電流控制型器件,功耗大,現(xiàn)在一般使用CMOS器件,電壓控制型器件,功耗大為降低。

關(guān)于這個問題,已經(jīng)寫成一篇文章,內(nèi)容如下,要想深入了解計算機,先學(xué)一下操作系統(tǒng)和微機原理吧!

軟件怎么控制硬件的,不是一言半語就能說的清楚的,其過程是很復(fù)雜的,這里就簡單說一下原理吧,沒有看過微機原理和操作系統(tǒng)相關(guān)的介紹聽起來應(yīng)該會比較吃力。我們所說的軟件,其實就是一套操作計算機運行的機制,里面的所有功能,不論大小,都是需要硬件配合才會展示出來的。在軟件中,需要編程語言,這些編程語言都是高級語言,這些高級語言是為了我們更容易編譯操作而編寫的,硬件是看不懂的,是需要經(jīng)過翻譯,翻譯成為機器語言,然后計算機才看的懂,進而執(zhí)行簡單的操作。無數(shù)簡單的操作就成了軟件所需要的功能,然后通過機器展示出來。

機器語言是非常簡單的,因為機器的每個部件的功能都是固定的,所以要完成一個復(fù)雜的動作,需要把相關(guān)的部件按一定的規(guī)律有序完成才行,這其中有多復(fù)雜想想也應(yīng)該知道。機器能接受的指令就只有有2個,固定一個動作,做或不做,在計算機中是以2進制標(biāo)記的,也就是1和0,指令為1,就做該動作一次,指令為0,就不做該動作。大量固定的動作根據(jù)一定的規(guī)律有序的成功做完,就組成軟件中所需要完成的一個功能。這就和彈鋼琴是一樣的,每一個音符需要你按一個鍵,每按一次就是一次動作,大量有序的按鍵就展示出了一首曲子,計算機的動作和鋼琴的琴鍵是一樣的道理。

最早的時候,軟件編程就是大量的機器指令堆砌,工作量非常龐大,且內(nèi)容復(fù)雜無比,維護起來非常麻煩,所以才有機器語言的誕生,就是計算機出廠前計術(shù)人員已經(jīng)把固定的指令操作打包了組成了一個又一個的相對復(fù)雜功能,只要計算機軟件調(diào)用觸發(fā)這些功能就可以展示相應(yīng)的功能了,這一層的語言就是計算機語言了,匯編語言就是這一層面的,匯編編程是非常麻煩的,代碼量大,工作量也嚇人,但是,功能和運行速度也強悍的嚇人,任何高級語言都無法比擬,算是軟件開發(fā)真正的核心技術(shù)所在。

我們現(xiàn)在所說的軟件編程,用的就是比計算機語言高一層的語言,也就是高級語言,像如今流行的語言C/C++、J***a、PHP、js等都是高級語言。用這些高級語言幾行代碼展示的功能,在計算機執(zhí)行的時候仍然是非常復(fù)雜的行為,所以不要認(rèn)為會編程就認(rèn)識了計算機,真正深究,核心技術(shù)的復(fù)雜程度絕對超乎你的想象。

看到這里,心理是不是已經(jīng)有了答案,硬件是不可能完成你所有想要的功能的,軟件可以展示的功能都是計算機固有的功能,功能有多強大主要取決于計算機的硬件。簡單來說,軟件就像是人的思想,硬件就是人的身體,身體的所有動作都是思想賦予的。但不合實際的想法身體是不可能完成的。

文章原文:***://***.toutiao***/i6419069886462427649/

更多軟件學(xué)習(xí)相關(guān)知識,請搜索東渡科技。

到此,以上就是小編對于彈琴機械臂系統(tǒng)原理的問題就介紹到這了,希望介紹關(guān)于彈琴機械臂系統(tǒng)原理的1點解答對大家有用。

[免責(zé)聲明]本文來源于網(wǎng)絡(luò),不代表本站立場,如轉(zhuǎn)載內(nèi)容涉及版權(quán)等問題,請聯(lián)系郵箱:83115484@qq.com,我們會予以刪除相關(guān)文章,保證您的權(quán)利。 轉(zhuǎn)載請注明出處:http://xiupc.cn/post/16730.html

分享:
掃描分享到社交APP