• 3D列印服務
  • COSPLAY 3D 建模
  • #maker+t=market
  • 1
  • 2
  • 3

Python人工智慧圖控 - 研習交流廳 造訪社團 » 開課

原文網址 石小川
2020-03-08 12:50:32

光騰三月份遠距教學 'TCP/IP通信程式實作班' 持續招生中...........,隨時歡迎報名!
熟悉通訊最底層的TCP/IP API程式設計, 對無人機、物聯網、機器監控的核心通訊才能駕馭自如,游刃有餘。
課程: 實作C#、Python遠端監控機台和即時影像傳輸程式 課程內容: *TCP/IP通訊協定基本知識 *Socket常用函式介紹 *主從式系統程式分析 *剖析網路聊天室程式 *剖析遠端監控和即時影像傳輸程式 *實作C#、Python主從式軸控遠端機台程式 *程式最佳化須注意的事項 學習目標---------------------------------- 由淺入深熟悉(A)、(B)、(C)三套程式碼通信信號交握原理。 (A) C#主從式聊天室程式 (B) C#主從式遠端監控和即時影像傳輸程式 (C) C#、Python主從式軸控遠端機台 學員可自行修改或設計網路監控通信程式,集中管理遠端機器或影像、資料的回傳,更進一步,也可將資料輸入Python模組做影像或深度學習分析後回饋機器(下一季課程),達到精簡人力,效能提升的智慧型機器。 此次開課採用遠距指導教學,實作還是以師徒方式比較有效率,使用messenger or line 個別指導學員學習,後期就以學員建立的程式溝通測試, 每一梯次是一個月,目的是想引導有C#、Python基礎的朋友進入自動控制有趣的領域,學習後學員可自行用C#、Python設計TCP/IP遠距監控通信應用程式。 日期: 2020/3/x 隨時開班 註1 . 確定要來上課的朋友請在此留言報名(A+),會用messenger主動聯絡您匯款,金額酌收NT$3500,並傳Quantum講義及程式給您。 Python人工智慧圖控 - 研習交流廳 : https://www.facebook.com/groups/523498395047153/

黃易辰
2020-03-08 13:54:28

石小川
2020-03-08 14:51:06


原文網址 石小川
2020-02-26 10:00:41

光騰書齋三月份課程開始報名
持續招生中...........,隨時歡迎報名!
課程: Python CNC軸控軟/硬體設計班 課程內容: *CNC 軸控平台基本知識 *CNC 軸控平台電路、電機組裝 *Python 軸控軟體開發平台建立 *Python呼叫動態連結庫(DLL)控制步進馬達 及 I/O Port *剖析motion.py程式如何控制CNC雷射機台 此次開課目的是想引導有Python(或C#)基礎的朋友進入軟/硬體設計有趣的領域,學習後學員可自行用Python控制運動卡, 開發自動控制相關應用程式APP或CNC機台, 學員學習期間對軟/硬體設計方面有問題也可用Messenger或Email 聯繫我, 可線上指導。
此次開課也是採用遠距指導教學,上課方式以講義內容為主,採用一個月彈性遠距師徒制一對一教學,主要以messenger通信軟體互相聯繫,會按照進度傳指導教學資料給學員,學員不受時間限制,隨時可發問,老師會撥空回答問題。
p.s. 前一梯次沒上過的同學請把握這一次了。
開始上課日期: 2020/3/5(星期四) 註 . 確定要來上課的朋友請在此留言報名(B+),會用messenger主動聯絡您匯款,金額酌收NT$3500,並傳Quantum講義及程式給您。 Python人工智慧圖控 - 研習交流廳 : https://www.facebook.com/groups/523498395047153/?ref=bookmarks

Robert Chen
2020-02-26 12:06:49

教授,請問會組硬體嗎?

Robert Chen
2020-02-26 15:36:52

請問教授,會開G code転cnc程式及飛刀課?

Wilson Kao
2020-02-26 15:59:13

有人有紡織業瑕疵檢測紡織的經驗嗎? 謝謝

Robert Chen
2020-02-26 18:18:29

感謝教授

Claude Hsu
2020-02-27 17:27:48

請問要報名是留(B+)嗎?謝謝

Mini Lai
2020-02-27 18:59:03

B+

郭耀中
2020-03-02 11:31:47

B+

Cian Cheng
2020-03-03 09:05:23

帳號多少?可以利用晚上嗎?

Cian Cheng
2020-03-03 13:11:05

+1


原文網址 石小川
2020-02-15 12:40:11

光騰二月份遠距教學 'TCP/IP通信程式實作班' 持續招生中...........,隨時歡迎報名!
課程: 實作C#、Python遠端監控機台和即時影像傳輸程式 課程內容: *TCP/IP通訊協定基本知識 *Socket常用函式介紹 *主從式系統程式分析 *剖析網路聊天室程式 *剖析遠端監控和即時影像傳輸程式 *實作C#、Python主從式軸控遠端機台程式 *程式最佳化須注意的事項 學習目標---------------------------------- 由淺入深熟悉(A)、(B)、(C)三套程式碼通信信號交握原理。 (A) C#主從式聊天室程式 (B) C#主從式遠端監控和即時影像傳輸程式 (C) C#、Python主從式軸控遠端機台 學員可自行修改或設計網路監控通信程式,集中管理遠端機器或影像、資料的回傳,更進一步,也可將資料輸入Python模組做影像或深度學習分析後回饋機器(下一季課程),達到精簡人力,效能提升的智慧型機器。

此次開課採用遠距指導教學,實作還是以師徒方式比較有效率,使用messenger or line 個別指導學員學習,後期就以學員建立的程式溝通測試, 每一梯次是一個月,目的是想引導有C#、Python基礎的朋友進入自動控制有趣的領域,學習後學員可自行用C#、Python設計TCP/IP遠距監控通信應用程式。

日期: 2020/2/19(星期三) 註1 . 確定要來上課的朋友請在此留言報名(A+),會用messenger主動聯絡您匯款,金額酌收NT$3500,並傳Quantum講義及程式給您。 註2. 對上一梯次課程: Python軸控有興趣的朋友也可在此留言(B+),讓我統計一下上課人數。 Python人工智慧圖控 - 研習交流廳 : https://www.facebook.com/groups/523498395047153/ ? ? ?


原文網址 石小川
2020-02-14 08:43:41

使用Python語言做自動控制的方法 - I I I通信篇
網路發達後要做到機器設備遠端監控已非遙不可及了,網路通信在無人工廠的監控設備上會越來越重要。 圖中展示的系統是TCP/IP通訊協定的主從(Server-Client)式架構,TServer伺服端程式負責現場機器設備運作及回傳Sensor數據和即時影像給TClient用戶端處理。 為了方便教學緣故,已將網路封包加密演算法及帳號管理拿掉,通信程式精簡許多,比較容易理解,伺服端是以C#實作,用戶端會以C#及Python各實作一個版本。建議伺服端以C++或C#為主,而用戶端可用Python設計遠端控制APP,將來回傳的遙測大數據可很容易的用Python模組分析。
熟悉遠端操控軟硬體對將來有志設計無人工廠機器設備的朋友幫助很大,習得一技之長絕對增加競爭力。2月分我將開此TCP/IP主從式通信實作課程,因為現在病毒肆虐,採遠距教學方式較適合,沒有機器設備的同學我會提供兩台三軸機台做遠距連線操控練習,可在家寫Python程式做遠端連線操控,詳細辦法及日期我再擇期公布,歡迎有興趣的朋友來報名上課。
第五章 實作C#、Python軸控遠端機台 Python很適合做數據擷取及分析,有幾萬個套件模組讓你發揮,全世界的網路根本就是一個取之不竭,用之不盡的海量資料庫。Python 只要引入模組,要寫個爬蟲程式沒幾行代碼,就可抓你關注的網頁資料做數據分析,真的只是小菜一碟而已,這是筆者會喜歡它的原因之一 。 Python既然在人工智慧、深度學習領域都有它的蹤跡,那麼自動控制的機台也必定不會缺席的,自動化工廠的機器設備和感測器交握信號彙整起來可能有上萬種數據需要及時處理並回傳,此時Python會是一個不錯的選擇。 本章通訊系統中的伺服端仍然採用第四章的C#版本 : TServer,用戶端則是Python版本 : PyClient,理由無他,伺服端需要具備同時快速處理許多用戶及機器設備,負擔較重,建議伺服端實作還是以C++或C#為主,處理速度會快很多。 Python標準庫支援的TCP/IP稍微陽春些,筆者這裡是採用PyQt5 QtNetwork通訊模組,函式庫支援豐富,因已封裝底層API,通訊程式也比較好寫,故推薦用此方式,學習道路可少走一些遠路。 伺服端程式命名為 :TServer(C#),用戶端程式命名 : PyClient(Python)。 TServer 第四章已介紹過,在此略過, 請讀者再複習一下內文。
下列程式碼是Python版本用戶端TCP/IP通訊模組部分原始碼,有興趣的朋友歡迎報名參加遠距指導教學課程(開課日期 : 2020/02/19, 下星期三)。
# -*- coding: utf-8 -*- ''' 石小川 / Michael Shih 光騰高科技工作室 / Quantum Tek. ''' import time #OpenCV模組 import cv2 from PyQt5.QtNetwork import QTcpSocket, QHostAddress, QAbstractSocket, QNetworkInterface,\ QNetworkAddressEntry, QHostInfo,QNetworkConfiguration,\ QNetworkConfigurationManager from PyQt5.QtCore import QObject, pyqtSignal from PyQt5.QtCore import Qt, QByteArray, QDataStream, QIODevice from TStream import TStream #------------------------------------------------------------------------------ #Client通信處裡類別 #------------------------------------------------------------------------------ class TcpClient(QTcpSocket): #signal define def __init__(self, parent=None): super(TcpClient, self).__init__(parent) self.__serverIP = QHostAddress() self.__serverPort = 8000 #int self.__userName = "" self.__clientSocket = None self.__pImage = None self.__chunkMode = False #切換接收mode是 command 或 chunkBytes self.__chunkCount = 0 self.__chunkLength = 0 self.__chunkBytes = QByteArray() self.__Dro = [] #------------------------------------------------------------------------ def Open(self, ip, port, userName): if not self.__serverIP.setAddress(ip): return False self.__serverPort = port self.__userName = userName if(self.__userName == ''): return False self.__clientSocket = QTcpSocket(self) self.__clientSocket.abort(); self.__clientSocket.connected.connect(self.Connected) self.__clientSocket.disconnected.connect(self.Disconnected) self.__clientSocket.readyRead.connect(self.dataReceived) self.__clientSocket.connectToHost(self.__serverIP, self.__serverPort) self.SendCommand_Connect(self.__userName) #------------------------------------------------------------------------ def Close(self): try: self.SendCommand_Disconnect(self.__userName) self.__clientSocket.disconnectFromHost() except Exception as e: print(e) #------------------------------------------------------------------------ def ListenServer(self, byteArray): stream = TStream() #byteArray Data structure : command(4) + datalength(4) + data(dataLength) if(self.__chunkMode == False): command = stream.GetPackCommand(byteArray) bData = stream.GetPackBytes(byteArray) #bData是純資料存 , 扣掉command(4)和扣掉datalength(4) length = len(bData) #接收到資料的長度 if(command == 9999): #新用戶者上線通知 data = stream.BytesToString(bData) #not used self.SendCommand_JogMode(0) elif(command == 1): #user要求對所有 Client廣播 data = stream.BytesToString(bData) #not used elif(command == 2): #//user 私密Client data = stream.BytesToString(bData) #not used elif(command == 3): #//image 需分多次接收 self.__chunkMode = True #接下來開始接收大塊資料 (>65536 都是大塊資料) self.__chunkCount = 0 self.__chunkBytes.clear() self.__isImage = False; nCols, nRows, nChannels = stream.ImageSize(bData) #一張影像大小 4(nCols) + 4(nRows) + 4(nChannels) + 320x 240 x3 = 230412 #減去已接收到的資料 (65536-4 = 65528) self.__chunkLength = nCols*nRows*nChannels + 12 self.__chunkCount = length self.__chunkBytes.append(bData) elif(command == 4): #//接收Server送來三軸位置資料 data = stream.BytesToString(bData) codes = data.split('|') #print (codes) self.__Dro.clear() for code in codes: #字串轉浮點 self.__Dro.append(float(code)) else: #chunkMode length = len(byteArray) self.__chunkCount += length self.__chunkBytes.append(byteArray) if(self.__chunkCount >= self.__chunkLength): self.__pImage = stream.ByteArrayToMat(self.__chunkBytes) self.SendCommand_Position(self.__userName) self.__chunkMode = False #切換回command模式

王登程
2020-02-14 20:16:43

如果待加工料可以自动化输送到加工台,那技术上真的可以远程加工了。


原文網址 石小川
2020-02-02 09:39:49

今年主推iMC4xxA系列,適合做遠距機器設備監控、數據採集等專案開發,另外亦有開課教導如何用C# 、Python程式語言做二次開發設計。
A. iMC406A六軸運動控制卡 (定價 NT$ 10000) 主要功能如下 : (1)運動卡與PC主控台通信是採用100MHz乙太網路。 (2)軸控制 : 6軸。 (3)輸出控制接點 : 32。 (4)輸入控制接點 : 26。 (5)類比轉數位(AD) : 8路。 (6)數位轉類比(DA) : 4路。 (7)PWM : 4路 B. iMC408A八軸運動控制卡(定價 NT$ 12000) 主要功能如下 : (1)運動卡與PC主控台通信是採用100MHz乙太網路。 (2)軸控制 : 8軸。 (3)輸出控制接點 : 32個。 (4)輸入控制接點 : 32個。 (5)類比轉數位(AD) : 8路。 (6)數位轉類比(DA) : 4路。 (7)PWM : 4路 p.s. 尚有4軸 ~ 14軸運動控制卡販售,詳細的iMC xx 規格可留言向我索取或解答,謝謝了。 可參考我的賣場: [21世紀電鋪] 乙太網 六轴運動控制卡 iMC3062E https://goods.ruten.com.tw/item/show?21925786070681
產品介绍 (一)運動控制硬體資源: ( 1) 實時以太網接口,用於與計算機高速通信; (2) 4~16個軸接口(詳見下表),用於連接伺服/步進驅動器; (3) 每軸均有編碼器輸入接口、伺服使能、伺服復位、伺服到位、伺服報警、正/負限位開關、原點開關等接口; (4) 1個輔編碼器接口,可用於連接電子手輪等; (5) 1個停止開關輸入,可用於連接停止/急停開關。 (6) 開關量輸入和輸出的數量見下表。 (7) 8路0~10V模擬量電壓輸入;(僅iMC4xxA系列) (8) 4路﹢10V~-10V模擬電壓輸出;(僅iMC4xxA系列) (9) 4路高精度PWM輸出。(僅iMC4xxA系列) (10) 支持4~100字符用戶自定義加密,保護系統集成商的知識產權。
(二) 主要指標 (1) 點到點運動,運動過程中可任意改變目標位置和速度;
(2) 連續速度運動;
(3) 電子齒輪運動;
(4) 電子手輪運動;
(5) 插補運動:任意兩軸圓弧插補、多軸直線插補、螺旋線(圓弧+直線)插補,支持微小線段連續插補,支持兩個插補空間同時插補;
(6) 輪廓運動模式(上位機粗插補,控制卡樣條擬合及精插補);
(7) 比例跟隨功能:某參數的值按線性比例地跟隨另一參數值的變化而變化;
(8) 龍門驅動(雙電機驅動/主從跟隨運動);
(9) 位置捕獲鎖存:探測到探針開關信號將當期位置鎖存入FIFO;
(10) 位置/位移比較輸出功能;
(11) 進給倍率控制、暫停等;
(12) 反向間隙補償和線性補償;
(13) DA的輸出電壓可跟隨插補速度等參數的值按線性比例地輸出;(僅iMC4xxA系列)
(14) PWM輸出的占空比或頻率可跟隨插補速度等參數的值按線性比例地輸出;(僅iMC4xxA系列)
(三) 主要控制功能 (1) 全集成運動控制引擎,高達48位計算,高精、高速、高可靠;
(2) 100M實時以太網與計算機通信,純硬件協議機,通信響應小至50uS,四級校驗,確保可靠;計算機最多可連64塊控制卡(通過交換機);
(3) 運動控制周期:1mS;
(4) 單卡最高16軸獨立/插補運動控制;
(5) 脈沖輸出最高頻率:6Mhz;
(6) 編碼器最高輸入頻率6MHz;
(7) 32位指令和反饋位置:-2147483648~2147483647,即[-2^31,2^31-1);
(8) 位置誤差:≦ 1 PULSE;
(9) 指令速度分辨率(誤差):<0.002%;
(10) 模擬量輸入電壓范圍:0~10V,精度12位。每通道的釆樣頻率:5120Hz/n,(n為啟用的通道數)。
(11) 模擬量輸出電壓范圍:-10V~+10V,等效精度為12位,0~500Hz;
(12) 高精度PWM輸出;
(四) 操作環境 操作溫度:0 ~ 60 ℃ 儲存溫度:-20 ~ 80 ℃ 溼度:5% ~ 90% 無凝結.
(五)關於驅動器連接 釆用RJ45座作為驅動器連接口是該控制卡的特色之一,可釆用5類(CAT5)或六類(CAT6)以太網線,一端壓制水晶頭,另一端的線焊接到伺服驅動器的插頭(常見的為SCSI-50P插頭),如圖所示 若連接步進驅動器,一般情況下只需連接脈沖指令和方向等信號,因此一般只需連接其中的一個RJ45插座(即AXn_A座),如圖所示:


原文網址 石小川
2019-11-29 14:25:02

@光騰書齋十二月份第一梯次軸控班課程表 課程: Python 軸控班 課程三小時內容:
*軸控平台基本知識
*Python 軸控軟體開發平台建立
*Python 呼叫動態連結庫(DLL)控制步進馬達 及 I/O Port
*剖析motion.py 程式實例如何控制雷射機台 此次開課目的是想引導有Python基礎的朋友進入智慧型機器有趣的領域,學習後學員可自行用Python控制運動卡,開發相關應用程式或智慧型機器。 學員學習後對軟硬體方面有問題也可用Messenger或Email 聯繫我, 可線上指導。 此次課程3小時,含講義,酌收費用NT$3500。 日期: 2019/12/7(星期六)
A班. 下午 2:00 – 5:00 (適合對智慧型機器軟硬體開發有興趣者)
@光騰書齋十二月份第一梯次硬體班課程表 課程: 軸控機電系統硬體班 課程內容:
* 認識軸控零組件
* 機台設計
* 電控接線及設定
* 軟體驅動測試
* 機台調校 此次開課目的是 – 想引導對AI智慧型的機器開發有興趣的朋友,進入無人關燈工廠有趣的領域,學習課程結束後可自行設計機台及自組的能力,希望學員回去後可使用自已的平台,用Python軟體驗證成果。 學員學習後對軟硬體方面有問題也可用Messenger或Email 聯繫我, 可線上指導。 此次課程4小時,含講義,酌收費用NT$4000。 日期: 2019/12/8(星期日)
B班. 下午 2:00 – 6:00
[註]. 確定要來上課的朋友看您選哪一班次(A/B),並在下面留言A/B, 我會主動用Messenger連絡您再通知匯款,並傳Quantum講義給您。 上課地點: 基隆

吳水豚
2019-12-03 13:16:38

大大強大~~~想報名大大課程...但基礎能力不夠,我應該預先看那些書或者資訊先來增強呢?


 

全不選 發文排行