# Python與IOA仿真方法
*更新時間:2022年5月19日*
> 本章節介紹python與IOA的仿真方法,具體包含
> = 工作原理
> = 軟件需求
> = 軟件安裝
> = 測試用例搭建方法
> 其中,測試用例有兩個,分別為**虛擬控制器**的連接與控制以及**虛擬相機**的連接與控制
> 本章演示和視頻講解 [點擊鏈接播放](http://39.106.220.92:8080/workspace/2/video/video.mp4)
## 1. 工作原理
>IOA虛擬仿真引擎將場景內虛擬相機實時捕獲的圖像信息利用tcp協議發送出去,python程序接收該信息后對圖像進行處理,得到處理結果后利用tcp協議控制場景內虛擬控制器

## 2. 軟件需求
> 在本教程當中,需要使用到一臺Windows系統的PC主機,硬件資源需要滿足內存不小于8G,搭載規格不低于1050的獨立顯卡。在此Windows主機中,需要安裝以下軟件:
\- [**IOA虛擬仿真軟件**](http://www.ioaol.com/)
\- [**Python解釋器**](https://www.python.org/)
\-[ **Visual Studio Code編輯器(可選)**](https://code.visualstudio.com/)
\-[ **Python庫**](//down.ioaol.cn/004C54B39E870007)
## 3. 軟件安裝
> Visual Studio Code并非必選項,但在此教程當中將使用Visual Studio Code作為編輯器,強烈建議對python不太熟悉的初學者安裝此軟件。對于有python使用經驗的用戶,可以自行選用熟悉的編輯器,并利用pip管理工具安裝依賴。
>
>IOA虛擬仿真引擎從官網(http://www.ioaol.com/) 獲取,安裝即可運行,無需進行額外配置。以下兩節將介紹python解釋器與Visual Studio Code編輯器的安裝與配置。
#### **python解釋器的安裝與配置**
> **Step1** 打開Windows的 Microsoft Store,可從開始菜單中進行搜索。
**Step2** 在搜索欄中搜索python,可看到如下界面

**Step3** 建議安裝Python3.7。點擊Python3.7,在彈出頁面中,點擊安裝。
**Step4** 安裝python依賴庫。按下 Win+R,在彈出的運行框內輸入cmd,點擊確定。

**Step5** 在彈出的Windows命令行內輸入以下命令:
`pip install opencv-python modbus_tk paddlepaddle paddleocr imutils `
然后按下回車,等待安裝完成即可。

#### **Visual Studio Code的安裝及配置**
> **Step1** 從官網(https://code.visualstudio.com) 獲取Visual Studio Code安裝包。
> 
> ** Step2** 運行安裝程序,保持默認選項進行安裝。
> **Step3** 打開Visual Studio Code,安裝python拓展。
> 
> ** Step4** (可選)用戶也可從拓展中搜索中文拓展包(Simple Chinese),以及其他拓展包。
## 4. 測試用例搭建方法 - IOA與虛擬相機的交互控制
> **step1** 搭建IOA場景
>
a. 打開IOA軟件
b. 從素材庫中拖出一個**視覺相機**

c. 從素材庫中拖出一個**矮紫色快**

d. 將兩個物體移動至合適位置,使視覺相機能夠看到目標物體
> **step2** 編寫python程序
a. 創建一個文件夾,用于存放案例代碼
b. 打開Visual Studio Code,點擊 **文件** **\-打開文件夾**,打開此文件夾。
c. 將IOA驅動庫放在此文件夾下。
d. 新建一個main.py文件,用于編寫本案例的代碼,目錄結構如下:

e. 編寫main.py文件,將如下代碼編寫進去并保存
```
from IOA_driver import *
# 創建一個攝像頭
camera = Camera()
while(True):
# 獲取攝像頭圖像
camera.get\_image()
# 延時
time.sleep(0.5)
# 顯示攝像頭圖像
camera.show()
```
> **step3** 運行案例
a. 在IOA軟件內,點擊運行按鈕

b. 在Visual Studio Code內,點擊 Run python file按鈕

## 5. 測試用例搭建方法 - IOA與虛擬相機的交互控制
> **step1** 搭建IOA場景
a. 打開IOA軟件
b. 從素材庫中拖出一個**LED燈**

c. 添加控制器

d. 配置接線,LED連到控制器的 DO-0管腳

> **step2** 編寫python程序
a. 創建一個文件夾,用于存放案例代碼
b. 打開Visual Studio Code,點擊 **文件** **\-打開文件夾**,打開此文件夾。
c. 將IOA驅動庫放在此文件夾下。
d. 新建一個main.py文件,用于編寫本案例的代碼,目錄結構如下:

e. 編寫main.py文件,將如下代碼編寫進去并保存
```
from IOA_driver import *
# 創建一個虛擬控制器
controller = Controller()
# LED的接線配置為 DO-0
pin_led = 0
while True:
# 點亮LED
controller.DigitalWrite(pin\_led, 1)
# 延時
time.sleep(1)
# 熄滅LED
controller.DigitalWrite(pin\_led, 0)
# 延時
time.sleep(1)
```
> **step3** 運行案例
a. 在IOA軟件內,點擊運行按鈕

b. 在Visual Studio Code內,點擊 Run python file按鈕

- IOA-更新與安裝
- 軟件注冊與安裝
- 軟件使用協議
- 注冊與使用
- (一)、認識IOA基礎界面功能
- UI界面與設置
- 軟件環境設置
- 三維導航操作
- 3D導航球使用
- 快捷鍵與仿真
- IOA開發工具下載匯總
- (二)、三維場景搭建
- 坐標及旋轉
- 模型樹與拼接
- 從SolidWorks到IOA放置的模型自制
- IOA輔助工具
- (三)、虛擬電氣與調試
- (三)、虛實控制與編程
- 西門子PLC的仿真與控制
- 實體S7-1200控制器的添加
- 虛擬S7-1200控制器的添加
- 西門子PLCS7-1512控制器的添加
- 三菱PLC的仿真與控制
- 三菱PLC仿真器的使用說明
- 三菱PLC的添加與說明
- 工業機器人(納博特)仿真
- 工業機器人(KEBA)仿真
- 工業機器人(埃夫特)仿真
- 協作機器人(遨博)仿真
- 運動控制(ZMC308)正運動仿真
- 機器視覺(VPLC516)正運動仿真
- 微型機器人(開塔)仿真
- 開塔機器人使用教程
- IOA與開塔機器人仿真
- 工業機器人(ABB)仿真
- Py-teach快速編程仿真
- Py-teach與IOA仿真
- Py-teach語法與編程
- Python編程與仿真
- Python與IOA仿真方法
- Python編程API說明
- 樹莓派與IOA仿真
- EAIDK610與IOA仿真
- 單片機接入與仿真控制
- Mixly與IOA
- ArduinoIDE
- Mixly-MEGA_S虛擬工廠SDK
- Mixly-UNO_S虛擬工廠SDK
- Mixly-ESP32虛擬工廠SDK
- (四)、自定義控制器添加
- modbus-tcp自定義控制器