在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在空中控制計算機

454398 ? 來源:網絡整理 ? 作者:網絡整理 ? 2019-11-14 11:46 ? 次閱讀

第1步:所需材料

跳躍Motion支持Python,Java,C ++,C#,Javascript。在本教程中,我們將使用Java。

因此,在開始制作程序之前,我們需要查看此構建所需的材料:

1。飛躍運動控制器(在此處購買)

2。面向Java開發人員的Eclipse IDE(在此處下載

3。 Leap Motion設置文件(在此處下載)

4。 Leap Motion SDK(在此處下載)

5。 Java SE 7(在此處下載)(下載JDK和JRE )

( * Leap Motion庫僅適用于Java 6或Java 7 )

如果您不知道如何設置eclipse,那么我推薦此Java系列入門教程:在此處觀看

好,現在讓我們轉到涉及的步驟創建程序。

步驟2:軟件設置

跳躍運動支持多種編程語言,例如C ++,C#,Python,Java和Javascript。

在本教程中,我們將使用Java進行編程。

初始設置:

1。首先轉到https://www.leapmotion.com/setup并下載Leap Motion設置文件,然后安裝該應用程序。它會安裝所有內容,以將the動控制器連接到您的計算機。

2。接下來轉到https://developer.leapmotion.com/(開發人員門戶)并創建一個帳戶。然后下載Leap Motion SDK。

3。然后將zip文件中的所有文件提取到您選擇的任何文件夾中。

配置類路徑:

在此本教程將使用面向Java開發人員的Eclipse IDE。

1。打開Eclipse,然后單擊File》 New》 Java Project。

2。為項目命名,并確保將執行運行時環境JRE設置為Java SE 1.7,如圖所示。

3。然后單擊“下一步”,打開“庫”選項卡,然后選擇“添加外部JAR”并導航到先前提取的文件夾。

4。然后打開LeapSDK文件夾并轉到libs文件夾并選擇LeapJava.jar文件。

5。接下來,單擊LeapJava.jar旁邊的三角形下拉按鈕,然后從“下拉菜單”中單擊“本機庫位置”,然后單擊“編輯”,如圖所示。

6。然后單擊“外部文件夾”,然后導航到LeapSDK文件夾》 lib》,然后根據您的操作系統選擇 x64 或 x86 文件夾,然后單擊“確定”,然后單擊“完成”。

我們現在在我們的項目中安裝了LeapMotion,現在開始進行一些編碼!

第3步:跳躍運動監聽器

Now that we are done importing the libraries , let us start working on the project.

初始設置:

1。首先,我們需要在源文件夾中創建一個新類,單擊項目文件夾旁邊的三角形下拉箭頭。

2。在您的項目文件夾中,右鍵單擊src文件夾,轉到new》,然后單擊class創建一個新的Java類。

3。給班級起個名字,然后單擊完成。

現在,讓我們從代碼開始:

1。首先,我們創建一個Leap Motion偵聽器:(注意:導入必要的庫),偵聽的偵聽器是何時將Jump Motion控制器連接到計算機的。

package starkmouse;

import java.io.IOException;

import java.awt.AWTException;

import java.awt.GraphicsDevice;

import java.awt.GraphicsEnvironment;

import java.awt.MouseInfo;

import java.awt.Point;

import java.awt.Robot;

import java.awt.event.InputEvent;

import java.awt.event.KeyEvent;

import com.leapmotion.leap.*;

import com.leapmotion.leap.Controller.PolicyFlag;

public class leapmoues {

public static void main(String[] args) throws AWTException {

Controller controller = new Controller();

controller.setPolicyFlags(PolicyFlag.POLICY_BACKGROUND_FRAMES);

SampleListener listener = new SampleListener();

controller.addListener(listener);

// controller.enableGesture(Gesture.Type.TYPE_SCREEN_TAP);

// controller.enableGesture(Gesture.Type.TYPE_SWIPE);

controller.enableGesture(Gesture.Type.TYPE_CIRCLE);

System.out.println(“Press Enter to quit.。.”);

try {

System.in.read();

} catch (IOException e) {

e.printStackTrace();

}

controller.removeListener(listener);

}

}

class SampleListener extends Listener {

boolean readyForControl = false;

int screenWidth;

int screenHeight;

boolean iBoxGet = false;

InteractionBox iBox = null;

Robot robot;

boolean isMoving = false;

boolean unGrip = false;

boolean wasFacingDown = true;

boolean wasInTabState = false;

boolean wasTabbing = false;

boolean justCircleGestured = false;

boolean isResizing = false;

public void onConnect(Controller controller) {

System.out.println(“Connected”);

GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment()

.getDefaultScreenDevice();

screenWidth = gd.getDisplayMode().getWidth();

screenHeight = gd.getDisplayMode().getHeight();

System.out.println(“Screen Resolution: X: ” + screenWidth + “, H: ”

+ screenHeight);

readyForControl = true;

try {

robot = new Robot();

robot.setAutoDelay(5);

} catch (AWTException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

步驟4:幀和手勢數據

跳躍運動幀數據,其中包括手勢(圓形,捏,掌面朝下和所有其他手勢)

跳躍運動有兩個紅外攝像機和三個紅外LED。跳躍運動使用三個IR Led形成IR點圖案,從而形成3D數據收集,IR相機拍攝稱為幀的圖片。幀從跳躍運動設備發送到計算機,我們可以對其進行編程。

跳躍運動使用復雜的數學分析圖片和點定位,然后比較紅外拍攝的兩張圖片的數據相機并使用兩個2D表示形式獲得3D表示形式。

跳躍運動設備以300 fps的速度捕獲。然后,我們對發送到計算機的每個幀進行處理。

代碼:

public void onFrame(Controller controller) {

Frame frame = controller.frame(); // The latest frame

// Frame previous = controller.frame(1); //The previous frame

// System.out.println(“Frame available”);

if (!iBoxGet) {

iBox = frame.interactionBox();

iBoxGet = true;

System.out.println(“Interaction box set!”);

}

// Pointable furthestFront = frame.pointables().frontmost();

Hand rightHand = frame.hands().rightmost();

Vector palmV = rightHand.palmVelocity();

// System.out.println(“Velocity: X: ” + palmV.getX() + “, Y: ” +

// palmV.getY()

// + “, Z: ” + palmV.getZ());

Vector palmN = rightHand.palmNormal();

// System.out.println(“Normal: X: ” + palmN.getX() + “, Y: ”

// + palmN.getY() + “, Z: ” + palmN.getZ());

Point mouseLoc = MouseInfo.getPointerInfo().getLocation();

int currentMouseX = mouseLoc.x;

int currentMouseY = mouseLoc.y;

if (readyForControl && rightHand.confidence() 》 .15) {

if (!isMoving && !wasInTabState && frame.hands().count() 》 1) {

Hand leftHand = frame.hands().leftmost();

if (leftHand.pinchStrength() 》 .8

&& rightHand.pinchStrength() 》 .8) {

if (!isResizing) {

System.out.println(“Resizing.。.”);

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_S);

robot.keyRelease(KeyEvent.VK_S);

robot.keyPress(KeyEvent.VK_DOWN);

robot.keyPress(KeyEvent.VK_RIGHT);

robot.keyRelease(KeyEvent.VK_DOWN);

robot.keyRelease(KeyEvent.VK_RIGHT);

isResizing = true;

}

}else{

if(isResizing){

System.out.println(“Resizing complete!”);

robot.mousePress(InputEvent.BUTTON1_MASK);

robot.mouseRelease(InputEvent.BUTTON1_MASK);

isResizing = false;

}

}

}

// System.out.println(“Confidence: ” + rightHand.confidence());

if (rightHand.grabStrength() 》 .99 && !wasInTabState && !isResizing) {

if (!isMoving && palmN.getY() 《 .8) {

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_R);

robot.keyRelease(KeyEvent.VK_R);

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_M);

robot.keyRelease(KeyEvent.VK_M);

robot.keyPress(KeyEvent.VK_DOWN);

robot.keyRelease(KeyEvent.VK_DOWN);

isMoving = true;

}

// System.out.println(rightHand.grabStrength());

}

else {

// System.out.println(“Not grabbing”);

if (isMoving) {

robot.mousePress(InputEvent.BUTTON1_MASK);

robot.mouseRelease(InputEvent.BUTTON1_MASK);

isMoving = false;

if (palmN.getX() != 0 && palmN.getY() != 0 && palmN.getZ() != 0) {

if (palmN.getY() 《 -.1 && palmN.getZ() 》 -.8) {

if (currentMouseY 《= 8) {

robot.keyPress(KeyEvent.VK_WINDOWS);

robot.keyPress(KeyEvent.VK_UP);

robot.keyRelease(KeyEvent.VK_WINDOWS);

robot.keyRelease(KeyEvent.VK_UP);

}

else {

if (screenWidth - currentMouseX 《= 12) {

robot.keyPress(KeyEvent.VK_WINDOWS);

robot.keyPress(KeyEvent.VK_RIGHT);

robot.keyRelease(KeyEvent.VK_WINDOWS);

robot.keyRelease(KeyEvent.VK_RIGHT);

} else if (currentMouseX 《= 12) {

robot.keyPress(KeyEvent.VK_WINDOWS);

robot.keyPress(KeyEvent.VK_LEFT);

robot.keyRelease(KeyEvent.VK_WINDOWS);

robot.keyRelease(KeyEvent.VK_LEFT);

}

}

} else {

System.out.println(“Normal: X: ” + palmN.getX()

+ “, Y: ” + palmN.getY() + “, Z: ”

+ palmN.getZ());

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_N);

robot.keyRelease(KeyEvent.VK_N);

}

}

}

}

if (!isMoving && !isResizing) {

if (palmN.getY() 《 -.8 && palmN.getZ() 》 -.5) {

wasFacingDown = true;

wasTabbing = false;

if (wasInTabState) {

robot.keyPress(KeyEvent.VK_ENTER);

robot.keyRelease(KeyEvent.VK_ENTER);

wasInTabState = false;

}

} else if (palmN.getY() 》= .8 && wasFacingDown

&& !wasInTabState) {

System.out.println(“Alt tabbing”);

wasFacingDown = false;

wasInTabState = true;

wasTabbing = false;

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_CONTROL);

robot.keyPress(KeyEvent.VK_TAB);

robot.delay(100);

robot.keyRelease(KeyEvent.VK_TAB);

robot.keyRelease(KeyEvent.VK_CONTROL);

robot.keyRelease(KeyEvent.VK_ALT);

try {

Runtime.getRuntime().exec(

“cmd /c start ” + “C:WindowSwitcher.lnk”);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

robot.delay(300);

} else if (wasInTabState && !wasFacingDown && !wasTabbing

&& palmN.getY() 《 .45) {

wasTabbing = true;

} else if (wasInTabState && !wasFacingDown && wasTabbing

&& palmN.getY() 》 .75) {

robot.keyPress(KeyEvent.VK_TAB);

robot.keyRelease(KeyEvent.VK_TAB);

wasTabbing = false;

}

}

/*

* if (!isMoving && !wasInTabState) { /* if(palmN.getZ() 《= -.7 &&

* rightHand.grabStrength() 《 .1){

* System.out.println(“Palm vertical velocity: ” +

* rightHand.palmVelocity().getY()); //float resultVerticalV =

* Math.round(Math.abs(rightHand.palmVelocity().getY()) - 1);

* //if(resultVerticalV 》 0){ robot.mouseWheel((int)

* Math.round(((rightHand.palmVelocity().getY()) / 500))); //}

* }else{

*/

if (!isMoving && !wasInTabState && frame.gestures().count() 》 0

&& frame.hands().count() == 1 && !isResizing) {

CircleGesture circleGesture = new CircleGesture(frame

.gestures().get(0));

// System.out.println(“Pinch strength: ” +

// rightHand.pinchStrength());

if (circleGesture.durationSeconds() 》 .5 && !justCircleGestured

&& rightHand.pinchStrength() 》 .8) {

System.out.println(“Closed a window!”);

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_F4);

robot.keyRelease(KeyEvent.VK_F4);

robot.keyRelease(KeyEvent.VK_ALT);

justCircleGestured = true;

}

} else {

justCircleGestured = false;

}

float xSpeed = (palmV.getX() / 6);

float ySpeed = (palmV.getY() / 6);

// System.out.println(“xSpeed: ” + xSpeed + “, ySpeed: ” + ySpeed);

robot.mouseMove((int) (currentMouseX + xSpeed),

(int) (currentMouseY - ySpeed));

// }

}

}

}

步驟5:完成代碼!

package starkmouse;

import java.io.IOException;

import java.awt.AWTException;

import java.awt.GraphicsDevice;

import java.awt.GraphicsEnvironment;

import java.awt.MouseInfo;

import java.awt.Point;

import java.awt.Robot;

import java.awt.event.InputEvent;

import java.awt.event.KeyEvent;

import com.leapmotion.leap.*;

import com.leapmotion.leap.Controller.PolicyFlag;

public class leapmoues {

public static void main(String[] args) throws AWTException {

Controller controller = new Controller();

controller.setPolicyFlags(PolicyFlag.POLICY_BACKGROUND_FRAMES);

SampleListener listener = new SampleListener();

controller.addListener(listener);

// controller.enableGesture(Gesture.Type.TYPE_SCREEN_TAP);

// controller.enableGesture(Gesture.Type.TYPE_SWIPE);

controller.enableGesture(Gesture.Type.TYPE_CIRCLE);

System.out.println(“Press Enter to quit.。.”);

try {

System.in.read();

} catch (IOException e) {

e.printStackTrace();

}

controller.removeListener(listener);

}

}

class SampleListener extends Listener {

boolean readyForControl = false;

int screenWidth;

int screenHeight;

boolean iBoxGet = false;

InteractionBox iBox = null;

Robot robot;

boolean isMoving = false;

boolean unGrip = false;

boolean wasFacingDown = true;

boolean wasInTabState = false;

boolean wasTabbing = false;

boolean justCircleGestured = false;

boolean isResizing = false;

public void onConnect(Controller controller) {

System.out.println(“Connected”);

GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment()

.getDefaultScreenDevice();

screenWidth = gd.getDisplayMode().getWidth();

screenHeight = gd.getDisplayMode().getHeight();

System.out.println(“Screen Resolution: X: ” + screenWidth + “, H: ”

+ screenHeight);

readyForControl = true;

try {

robot = new Robot();

robot.setAutoDelay(5);

} catch (AWTException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public void onFrame(Controller controller) {

Frame frame = controller.frame(); // The latest frame

// Frame previous = controller.frame(1); //The previous frame

// System.out.println(“Frame available”);

if (!iBoxGet) {

iBox = frame.interactionBox();

iBoxGet = true;

System.out.println(“Interaction box set!”);

}

// Pointable furthestFront = frame.pointables().frontmost();

Hand rightHand = frame.hands().rightmost();

Vector palmV = rightHand.palmVelocity();

// System.out.println(“Velocity: X: ” + palmV.getX() + “, Y: ” +

// palmV.getY()

// + “, Z: ” + palmV.getZ());

Vector palmN = rightHand.palmNormal();

// System.out.println(“Normal: X: ” + palmN.getX() + “, Y: ”

// + palmN.getY() + “, Z: ” + palmN.getZ());

Point mouseLoc = MouseInfo.getPointerInfo().getLocation();

int currentMouseX = mouseLoc.x;

int currentMouseY = mouseLoc.y;

if (readyForControl && rightHand.confidence() 》 .15) {

if (!isMoving && !wasInTabState && frame.hands().count() 》 1) {

Hand leftHand = frame.hands().leftmost();

if (leftHand.pinchStrength() 》 .8

&& rightHand.pinchStrength() 》 .8) {

if (!isResizing) {

System.out.println(“Resizing.。.”);

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_S);

robot.keyRelease(KeyEvent.VK_S);

robot.keyPress(KeyEvent.VK_DOWN);

robot.keyPress(KeyEvent.VK_RIGHT);

robot.keyRelease(KeyEvent.VK_DOWN);

robot.keyRelease(KeyEvent.VK_RIGHT);

isResizing = true;

}

}else{

if(isResizing){

System.out.println(“Resizing complete!”);

robot.mousePress(InputEvent.BUTTON1_MASK);

robot.mouseRelease(InputEvent.BUTTON1_MASK);

isResizing = false;

}

}

}

// System.out.println(“Confidence: ” + rightHand.confidence());

if (rightHand.grabStrength() 》 .99 && !wasInTabState && !isResizing) {

if (!isMoving && palmN.getY() 《 .8) {

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_R);

robot.keyRelease(KeyEvent.VK_R);

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_M);

robot.keyRelease(KeyEvent.VK_M);

robot.keyPress(KeyEvent.VK_DOWN);

robot.keyRelease(KeyEvent.VK_DOWN);

isMoving = true;

}

// System.out.println(rightHand.grabStrength());

} else {

// System.out.println(“Not grabbing”);

if (isMoving) {

robot.mousePress(InputEvent.BUTTON1_MASK);

robot.mouseRelease(InputEvent.BUTTON1_MASK);

isMoving = false;

if (palmN.getX() != 0 && palmN.getY() != 0

&& palmN.getZ() != 0) {

if (palmN.getY() 《 -.1 && palmN.getZ() 》 -.8) {

if (currentMouseY 《= 8) {

robot.keyPress(KeyEvent.VK_WINDOWS);

robot.keyPress(KeyEvent.VK_UP);

robot.keyRelease(KeyEvent.VK_WINDOWS);

robot.keyRelease(KeyEvent.VK_UP);

} else {

if (screenWidth - currentMouseX 《= 12) {

robot.keyPress(KeyEvent.VK_WINDOWS);

robot.keyPress(KeyEvent.VK_RIGHT);

robot.keyRelease(KeyEvent.VK_WINDOWS);

robot.keyRelease(KeyEvent.VK_RIGHT);

} else if (currentMouseX 《= 12) {

robot.keyPress(KeyEvent.VK_WINDOWS);

robot.keyPress(KeyEvent.VK_LEFT);

robot.keyRelease(KeyEvent.VK_WINDOWS);

robot.keyRelease(KeyEvent.VK_LEFT);

}

}

} else {

System.out.println(“Normal: X: ” + palmN.getX()

+ “, Y: ” + palmN.getY() + “, Z: ”

+ palmN.getZ());

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_N);

robot.keyRelease(KeyEvent.VK_N);

}

}

}

}

if (!isMoving && !isResizing) {

if (palmN.getY() 《 -.8 && palmN.getZ() 》 -.5) {

wasFacingDown = true;

wasTabbing = false;

if (wasInTabState) {

robot.keyPress(KeyEvent.VK_ENTER);

robot.keyRelease(KeyEvent.VK_ENTER);

wasInTabState = false;

}

} else if (palmN.getY() 》= .8 && wasFacingDown

&& !wasInTabState) {

System.out.println(“Alt tabbing”);

wasFacingDown = false;

wasInTabState = true;

wasTabbing = false;

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_CONTROL);

robot.keyPress(KeyEvent.VK_TAB);

robot.delay(100);

robot.keyRelease(KeyEvent.VK_TAB);

robot.keyRelease(KeyEvent.VK_CONTROL);

robot.keyRelease(KeyEvent.VK_ALT);

try {

Runtime.getRuntime().exec(

“cmd /c start ” + “C:WindowSwitcher.lnk”);

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

robot.delay(300);

} else if (wasInTabState && !wasFacingDown && !wasTabbing

&& palmN.getY() 《 .45) {

wasTabbing = true;

} else if (wasInTabState && !wasFacingDown && wasTabbing

&& palmN.getY() 》 .75) {

robot.keyPress(KeyEvent.VK_TAB);

robot.keyRelease(KeyEvent.VK_TAB);

wasTabbing = false;

}

}

/*

* if (!isMoving && !wasInTabState) { /* if(palmN.getZ() 《= -.7 &&

* rightHand.grabStrength() 《 .1){

* System.out.println(“Palm vertical velocity: ” +

* rightHand.palmVelocity().getY()); //float resultVerticalV =

* Math.round(Math.abs(rightHand.palmVelocity().getY()) - 1);

* //if(resultVerticalV 》 0){ robot.mouseWheel((int)

* Math.round(((rightHand.palmVelocity().getY()) / 500))); //}

* }else{

*/

if (!isMoving && !wasInTabState && frame.gestures().count() 》 0

&& frame.hands().count() == 1 && !isResizing) {

CircleGesture circleGesture = new CircleGesture(frame

.gestures().get(0));

// System.out.println(“Pinch strength: ” +

// rightHand.pinchStrength());

if (circleGesture.durationSeconds() 》 .5 && !justCircleGestured

&& rightHand.pinchStrength() 》 .8) {

System.out.println(“Closed a window!”);

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_F4);

robot.keyRelease(KeyEvent.VK_F4);

robot.keyRelease(KeyEvent.VK_ALT);

justCircleGestured = true;

}

} else {

justCircleGestured = false;

}

float xSpeed = (palmV.getX() / 6);

float ySpeed = (palmV.getY() / 6);

// System.out.println(“xSpeed: ” + xSpeed + “, ySpeed: ” + ySpeed);

robot.mouseMove((int) (currentMouseX + xSpeed),

(int) (currentMouseY - ySpeed));

// }

}

}

}

步驟6:運行程序和結果:

現在我們已經完成了對Leap Motion控制器的編程,我們可以在Eclipse中運行該程序了。

責任編輯:wv

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 控制器
    +關注

    關注

    113

    文章

    16507

    瀏覽量

    179949
  • JAVA
    +關注

    關注

    19

    文章

    2978

    瀏覽量

    105365
收藏 人收藏

    評論

    相關推薦

    計算機控制系統實踐報告

    計算機控制技術實踐報告
    發表于 10-17 13:45 ?0次下載

    微處理器如何控制計算機系統

    微處理器,作為計算機系統的核心部件,承擔著控制整個計算機系統運行的重要任務。它不僅是計算機的運算中心,還是控制中心,負責執行程序指令、處理數
    的頭像 發表于 08-22 14:21 ?641次閱讀

    簡述計算機的I/O控制方式

    計算機的I/O(輸入/輸出)控制方式是計算機系統中至關重要的部分,它決定了CPU與外設之間數據交換的方式和效率。隨著計算機技術的不斷發展,I/O控制
    的頭像 發表于 08-20 10:55 ?1478次閱讀

    計算機控制器的結構和功能

    隨著信息技術的迅猛發展,計算機已經深入我們生活的方方面面。而計算機控制器,作為計算機系統的核心部件之一,承擔著協調各部件工作、指揮整個計算機按程序運行的重要任務。本文將詳細介紹
    的頭像 發表于 06-17 15:47 ?2018次閱讀

    工業控制計算機的發展趨勢有哪些

    工業控制計算機是工業自動化系統中的核心設備,其發展趨勢對于整個工業自動化領域的發展具有重要意義。本文將從以下幾個方面對工業控制計算機的發展趨勢進行詳細分析: 硬件性能的提升 隨著科技的
    的頭像 發表于 06-16 11:41 ?1203次閱讀

    工業控制計算機的體系結構是什么

    工業控制計算機是一種專門為工業自動化控制領域設計的計算機系統,具有高性能、高可靠性、實時性、可擴展性等特點。本文將詳細介紹工業控制
    的頭像 發表于 06-16 11:38 ?1167次閱讀

    工業控制計算機的結構特點是什么

    工業控制計算機是一種專門用于工業自動化領域的計算機系統,其結構特點主要體現在以下幾個方面: 高可靠性 工業控制計算機需要在惡劣的工業環境中長
    的頭像 發表于 06-16 11:35 ?767次閱讀

    工業控制計算機的硬件組成有哪些

    工業控制計算機(Industrial Personal Computer,IPC)是一種專門為工業環境設計的計算機系統,具有高可靠性、高穩定性、高實時性等特點。在工業自動化、智能制造等領域中,工業
    的頭像 發表于 06-16 11:33 ?1952次閱讀

    工業控制計算機的特點 工業控制計算機的應用領域

    工業控制計算機是一種專門為工業自動化和控制系統設計的計算機。它具有高度的可靠性、穩定性和實時性,能夠滿足工業生產過程中對控制精度和響應速度的
    的頭像 發表于 06-16 11:30 ?1655次閱讀

    工業控制計算機的特點和要求

    工業控制計算機是一種專門設計用于工業環境的計算機系統,它們在自動化、監控和控制工業生產過程中發揮著關鍵作用。由于工業環境的特殊性,工業控制
    的頭像 發表于 06-11 10:48 ?1351次閱讀

    工業控制計算機與普通個人計算機相比有何區別?

    引言 隨著科技的不斷發展,計算機在各個領域的應用越來越廣泛。在眾多計算機類型中,工業控制計算機和普通個人計算機是兩種常見的
    的頭像 發表于 06-11 10:45 ?1141次閱讀

    工業計算機與普通計算機的區別

    在信息化和自動化日益發展的今天,計算機已經成為了我們日常生活和工作中不可或缺的工具。然而,在計算機領域中,工業計算機和普通計算機雖然都具備基本的計算
    的頭像 發表于 06-06 16:45 ?1691次閱讀

    什么是工業控制計算機?它有哪些特點?

    在工業自動化與智能化不斷發展的今天,工業控制計算機(Industrial Personal Computer,簡稱IPC)作為工業自動化系統的核心部件,發揮著至關重要的作用。本文將對工業控制
    的頭像 發表于 06-06 16:34 ?1632次閱讀

    工業計算機是什么?如何在不同行業中使用?

    工業電腦是專為在工業環境中使用而設計的計算機。它們可用于各個行業,包括制造、運 輸和能源。它們通常比普通計算機更強大,并且能夠在大多數計算機無法運行的環境中運行。在本文中,我們將更深入地了解什么是工業
    的頭像 發表于 04-01 15:45 ?1027次閱讀
    工業<b class='flag-5'>計算機</b>是什么?如<b class='flag-5'>何在</b>不同行業中使用?

    【量子計算機重構未來 | 閱讀體驗】+ 初識量子計算機

    欣喜收到《量子計算機——重構未來》一書,感謝電子發燒友論壇提供了一個讓我了解量子計算機的機會! 自己對電子計算機有點了解,但對量子計算機真是一無所知,只是聽說過量子糾纏、超快的運算速
    發表于 03-05 17:37
    主站蜘蛛池模板: 一区视频在线播放 | 在线精品一区二区三区 | 九色国产在视频线精品视频 | 五月亭亭六月丁香 | 激情五月网站 | 欧美性满足hd1819 | 插菊综合网| 色欧美在线 | 美女免费视频黄 | 免看一级a一片成人123 | 亚洲经典乱码在线播 | 午夜视频网站在线观看 | 天天天天操 | 日本免费一区二区老鸭窝 | 亚洲成在人 | 乱好看的的激情伦小说 | 激情网页 | 一级毛片不卡 | 亚洲成色在线综合网站 | 日本三级成人中文字幕乱码 | 天天摸天天操天天射 | 永久免费的啪啪免费的网址 | 国产大片免费观看中文字幕 | 在线观看你懂的网址 | 天天摸天天操天天爽 | 99久久伊人 | 中文在线三级中文字幕 | 成人看片免费无限观看视频 | 国产在线精品一区免费香蕉 | 日韩欧美不卡片 | 视频在线二区 | 好大好紧好爽好湿润视频 | 龙口护士门91午夜国产在线 | 午夜老司机永久免费看片 | 婷婷色亚洲 | 欧美日一区二区三区 | 午夜视频入口 | 综合网天天 | 五月婷婷 六月丁香 | 国产亚洲综合色就色 | 丁香六月色婷婷 |