直播推薦
企業(yè)動態(tài)
- 京東集團(tuán)發(fā)布2025年一季度業(yè)績 降本增效、技術(shù)創(chuàng)新引領(lǐng)京東工業(yè)高質(zhì)量發(fā)展
- 皓天試驗設(shè)備將攜多款環(huán)境試驗設(shè)備亮相CIBF2025深圳國際電池展
- 全場景節(jié)能30%以上!海爾中央空調(diào)亮相中國零售展
- igus全球環(huán)保騎行亞洲站在中國收官
- 京東工業(yè)與世達(dá)工具深化戰(zhàn)略合作 聯(lián)手推動專業(yè)工具行業(yè)數(shù)智供應(yīng)鏈升級
- 舒瑞普中國卓越中心暨蘇州新工廠開業(yè)典禮圓滿落成
- 華測儀器中標(biāo)華北電力大學(xué)綜合介電分析儀采購項目
- 商用中央空調(diào)的節(jié)能首選:海爾磁氣懸浮中央空調(diào)
推薦展會
要使PC機(jī)成為數(shù)據(jù)中心一般用到的有三種方式:(中心采用Innet公網(wǎng)連接、中心采用專線接入、撥號上網(wǎng)方式)
不管哪種方式PC機(jī)都需要一個固定IP。公網(wǎng)或?qū)>€方式的IP為網(wǎng)卡的IP;撥號上網(wǎng)方式的IP為無線Modem的GPRS卡綁定的IP。
1、 公網(wǎng)方式:
因為PC機(jī)有了固定的IP,所以在使用的時候,不需要做什么特別的設(shè)置就行了,只要將模塊的APN名稱設(shè)為CMNET就行。
2、 專線方式:PC機(jī)由網(wǎng)卡可以登錄到數(shù)據(jù)服務(wù)器所在的網(wǎng)絡(luò)內(nèi)。
具體實(shí)現(xiàn)方法:設(shè)置PC機(jī)的本地連接,(主要是IP地址和網(wǎng)關(guān),網(wǎng)關(guān)為數(shù)據(jù)服務(wù)器的網(wǎng)關(guān))設(shè)置完成后,可以用Ping命令測試網(wǎng)絡(luò)是否通。
步驟:點(diǎn)擊“開始”—“運(yùn)行”,在‘打開’中輸入Ping數(shù)據(jù)服務(wù)器的 IP,(如萊蕪力創(chuàng)的數(shù)據(jù)服務(wù)器IP為192.168.0.164,輸入Ping 192.168.0.164)回車。模塊的APN名稱設(shè)為 LICHUANG. LW. SD
3、 撥號上網(wǎng)方式:PC機(jī)由無線Modem可以登錄到數(shù)據(jù)服務(wù)器所在的網(wǎng)絡(luò)內(nèi)。
a、 無線Modem(調(diào)制解調(diào)器)有幾種?
一般情況下,我們使用的有兩種,一種為USB連接的,一種為串口連接的。
b、 怎樣設(shè)置可以使無線Modem登錄到數(shù)據(jù)服務(wù)器所在的網(wǎng)絡(luò)?
先將調(diào)制解調(diào)器正確連接到計算機(jī)上。
對調(diào)制解調(diào)器進(jìn)行安裝:控制面板—添加新硬件—從列表中選擇“調(diào)制解調(diào)器”—選擇此調(diào)制解調(diào)器所使用的端口—在區(qū)號中輸入‘086’,選擇音頻,外線區(qū)號可以不輸入。
調(diào)制解調(diào)器安裝完成后,還要診斷一下是否安裝正確,安裝的調(diào)制解調(diào)器是否可用。步驟為:控制面板—調(diào)制解調(diào)器—屬性—診斷。
對調(diào)制解調(diào)器進(jìn)行配置:控制面板—調(diào)制解調(diào)器—屬性—,在額外的初始化命令中,
如果是使用東營的GPRS卡,則在附加設(shè)置中輸入(“AT+CGDCONT=1,”IP”,”DYSHL.SD””)
如果使用的是力創(chuàng)的GPRS卡,則在附加設(shè)置中輸入(“AT+CGDCONT=1,”IP”,”LICHUANG.LW.SD””)
c、 怎樣建立撥號連接?
正確連接調(diào)制解調(diào)器后,還要建立撥號連接才可以。詳細(xì)步驟為:
右擊‘網(wǎng)上鄰居’—屬性—建立新連接—選擇撥號到網(wǎng)絡(luò)—在輸入時輸入‘*99***1#’,其于情況默認(rèn)點(diǎn)擊‘下一步’即可。
d、 撥號上網(wǎng)方式的IP怎樣獲得?
判斷數(shù)據(jù)中心(無線Modem)的IP,方法有多種:
先撥號連接,待撥號連接成功后,
在任務(wù)欄中右擊”撥號連接”的圖標(biāo),選擇’狀態(tài)’,在彈出的畫面中選擇’信息’,看一下’客戶端IP’就行了。
選擇開始—運(yùn)行(輸入cmd回車)—輸入ipconfig回車,便可以看到撥號連接的IP了。
e、 怎樣讓無線Modem掉線后自動重?fù)埽?
無線Modem在使用的過程中會出現(xiàn)掉線的情況,因為用戶不可能總是關(guān)注此時的無線Modem是否掉線了,為了使無線Modem不耽誤數(shù)據(jù)傳輸,可以將其設(shè)置成掉線后自動重?fù)艿墓δ堋?
具體操作為:
先查找到‘撥號連接’(在撥號網(wǎng)絡(luò)中)—屬性—選項
在‘撥號選項’中去掉所有的選項,選中‘重?fù)苓x項’中的斷線重?fù)芗纯伞?
在設(shè)置時也可以將重?fù)艽螖?shù)設(shè)置的更大一些,比如說10次,不設(shè)置也可,用戶可根據(jù)實(shí)際情況來定。
在‘重?fù)苓x項’中有一項為‘掛斷前的空閑時間’,我們一般設(shè)置為“從不”。如果設(shè)置為某個時間,則連接時間到了該值時便出現(xiàn)掉線的狀況。
二、一般控件的編寫:
控件實(shí)際上就是類的封裝,一個類中可以定義自己的結(jié)構(gòu)、屬性、方法、事件。
1、 結(jié)構(gòu): Private Type 結(jié)構(gòu)名
MyName as String """結(jié)構(gòu)中的參數(shù)
MyAge as Integer
End Type
2、 屬性:
Dim m_GPRSLong As Long
Public Property Let GPRSLong (ByVal NewGPRSLong As Long) """將表達(dá)式的值賦給變量或?qū)傩?
m_GPRSLong = NewGPRSLong
PropertyChanged "GPRSLong" """PropertyChanged方法是通知屬性的值已經(jīng)發(fā)生變化
End Property
Public Property Get GPRSLong() As Long """讀屬性值
GPRSLong = m_GPRSLong
End Property
3、 方法(函數(shù)):
Public Function StartServer(Ip As String, Port As Long) As Boolean
"""這種方法用戶可以使用
End Function
Private Sub tcpServer_Close(Index As Integer) As Boolean
"""這種方法用戶不可以使用,控件本身自己使用
End Sub
4、 事件:
Public Event GetUserID(ByVal User_Id As String, ByVal UserDeal_Id As String)
激活事件時用RaiseEvent 語句
RaiseEvent GetUserID(m_Id, Deal_Id)
5、 用戶用到的一些常用事件:
UserControl_Resize "當(dāng)控件*次顯示或狀態(tài)改變時發(fā)生,調(diào)節(jié)控件大小的。
比如可以在這里面設(shè)置一下控件的高度和寬度
UserControl.Height = 525
UserControl.Width = 525
這樣在用戶使用的時候向窗體中添加該控件時,大小就不可以改變了。
三、GPRS控件的主要屬性、方法、事件:
有了前面介紹的一般控件的知識,下面主要針對GPRS的工作原理,介紹一下其控件的編程:
1、 屬性:
GPRS控件的主要屬性就是IP地址、端口號、接收到的數(shù)據(jù)長度。
LocalIP 屬性 / Localport 屬性 / GPRSLong屬性
2、 方法:
A、StartServer(Ip As String, Port As Long) 啟動服務(wù)方法
本方法用于啟動GPRS服務(wù),在系統(tǒng)初始化時必須調(diào)用本方法來完成GPRS服務(wù)的初始化,否則GPRS模塊將無法正確登陸網(wǎng)絡(luò),進(jìn)行通訊。
IP參數(shù)為服務(wù)器Ip地址, 字符串型
Port參數(shù)為服務(wù)器通訊端口, 長整型,通常為2020端口.
成功返回Ture,失敗則返回False。
示例: StartServer(“192.168.0.1”,2020)
B、StopServer() 停止服務(wù)方法
停止服務(wù)方法,用來停止GPRS服務(wù),在系統(tǒng)結(jié)束退出時,調(diào)用本方法停止GPRS服務(wù)。
成功返回Ture,失敗則返回False.
示例: StopServer()
C、SendDataGPRS(DtuId As String, CmdData As Variant) 發(fā)送數(shù)據(jù)方法
本方法用來與GPRS模塊進(jìn)行通訊,核心方法,參數(shù)比較復(fù)雜.
DtuID,Gprs模塊標(biāo)識號,用來表明與那塊模塊進(jìn)行通訊.
CmdData,要傳送的數(shù)據(jù),變體變量,可接受字符串或者數(shù)組類型.
示例: SendDataGPRS(“6900000196”,Cmd)
3、 事件:
A、 GetUserID(ByVal User_Id As String, ByVal UserDeal_Id As String)
’’收到GPRS模塊的ID號或者是上線的ID的時觸發(fā)的事件
User_Id 為所有在線GPRS模塊ID號所組成的字符串。
UserDeal_Id為所有離線GPRS模塊ID號所組成的字符串。
如果下面的GPRS模塊上傳ID號時,系統(tǒng)會以事件的方式進(jìn)行接收,用戶可以在事件中對ID號做處理,想以什么格式顯示ID的信息有用戶自己做決定。
B、ReceiveData(ByVal User_Id As String, ByVal User_GetDataASC As Variant, ByVal User_GetDataHEX As Variant) ’’ 收到數(shù)據(jù)時觸發(fā)的事件
如果下面的設(shè)備有數(shù)據(jù)上傳時,就會觸發(fā)該事件,該事件包括3個參數(shù):
User_Id 為 設(shè)備的ID號;
User_GetDataASC 為 以ASCII方式顯示的數(shù)據(jù);
User_GetDataHEX 為 以HEX方式顯示的數(shù)據(jù)。
下面的設(shè)備在上傳數(shù)據(jù)的時候,會將ID號一塊傳上來,這樣用戶能夠分辨出是哪個設(shè)備傳上來的,而且上傳數(shù)據(jù)時,會將ASCII方式的數(shù)據(jù)和HEX方式的數(shù)據(jù)一塊傳上來,用戶想用什么數(shù)據(jù)自己決定。
四、 具體的內(nèi)部編程思路:
GPRS控件的編寫,我們用到的是Winsock控件,所以首先要先了解一下Winsock控件的使用.
1、Winsock控件的使用:
Winsock控件對用戶來說是不可見的,我們在編寫客戶端或服務(wù)器程序時,通過設(shè)置控件的屬性并調(diào)用其方法即可實(shí)現(xiàn)數(shù)據(jù)的雙向交換。
如果創(chuàng)建客戶應(yīng)用程序,就必須知道服務(wù)器計算機(jī)名或者 IP 地址(RemoteHost 屬性),還要知道進(jìn)行“偵聽”的端口(RemotePort 屬性),然后調(diào)用 Connect 方法。
如果創(chuàng)建服務(wù)器應(yīng)用程序,就應(yīng)設(shè)置一個收聽端口(LocalPort 屬性)并調(diào)用 Listen 方法。當(dāng)客戶計算機(jī)需要連接時就會發(fā)生 ConnectionRequest 事件。為了完成連接,可調(diào)用 ConnectionRequest 事件內(nèi)的 Accept 方法。
建立連接后,任何一方計算機(jī)都可以收發(fā)數(shù)據(jù)。為了發(fā)送數(shù)據(jù),可調(diào)用 SendData 方法。當(dāng)接收數(shù)據(jù)時會發(fā)生 DataArrival 事件。調(diào)用 DataArrival 事件內(nèi)的 GetData 方法就可獲取數(shù)據(jù)。
2、Winsock控件的常用屬性:
a、協(xié)議
在使用Winsock控件時,首先需要考慮使用什么協(xié)議??梢允褂玫膮f(xié)議包括 TCP 和 UDP。兩種協(xié)議之間的重要區(qū)別在于它們的連接狀態(tài):
• TCP 協(xié)議控件是基于連接的協(xié)議,可以將它同系統(tǒng)相比。在開始數(shù)據(jù)傳輸之前,用戶必須先建立連接。
• UDP 協(xié)議是一種無連接協(xié)議,兩臺計算機(jī)之間的傳輸類似于傳遞郵件:消息從一臺計算機(jī)發(fā)送到另一臺計算機(jī),但是兩者之間沒有明確的連接。另外,單次傳輸?shù)膠ui大數(shù)據(jù)量取決于具體的網(wǎng)絡(luò)。
在設(shè)計時,可以按如下方式設(shè)置應(yīng)用程序使用的協(xié)議:在“屬性”窗口中單擊“協(xié)議”,然后選擇 sckTCPProtocol 或者 sckUDPProtocol。也可以使用程序代碼來設(shè)置 Protocol 屬性,如下所示:
Winsock1.Protocol = sckTCPProtocol
b、IP地址(計算機(jī)名稱)
客戶應(yīng)用程序在與遠(yuǎn)程計算機(jī)相連接的時候,需要知道遠(yuǎn)程計算機(jī)的 IP 地址或者計算機(jī)名稱。
我們連接計算機(jī)時可以將其作為 RemoteHost 屬性的值。代碼如下:
Winsock1.RemoteHost = 計算機(jī)名稱 或者為 Winsock1.RemoteHost =IP地址
服務(wù)器程序用到LocalIP 屬性,它返回本地機(jī)器的 IP 地址,格式是 IP 地址加點(diǎn)字符串 (xxx.xxx.xxx.xxx)。
用RemoteHostIP屬性返回遠(yuǎn)程計算機(jī)的IP。
c、端口號
對于客戶應(yīng)用程序來說,RemotePort 屬性zui重要,它設(shè)置要連接的遠(yuǎn)程端口號。
對于服務(wù)器程序來說,LocalPort 屬性zui重要,它設(shè)置所用到的本地端口。這是用于偵聽的本地端口。如果的是端口 0,就使用一個隨機(jī)端口。在調(diào)用了 Listen 方法后,屬性就包含了已選定的實(shí)際端口。
3、Winsock控件的常用事件
a、Connect 事件
該事件是在到服務(wù)器的連接建立之后發(fā)生。
b、ConnectionRequest 事件
當(dāng)遠(yuǎn)程計算機(jī)請求連接時出現(xiàn)。
如果有連接請求時,可以用 Accept 方法接受新連接。
c、DataArrival 事件
當(dāng)新數(shù)據(jù)到達(dá)時出現(xiàn)。
如果有新數(shù)據(jù)到達(dá)時,可以用GetData方法接收數(shù)據(jù)。如果沒有獲取一個 GetData 調(diào)用中的全部數(shù)據(jù),則事件不會出現(xiàn)。只有存在新數(shù)據(jù)時才激活事件。可隨時用 BytesReceived 屬性檢查可用的數(shù)據(jù)量。
4、Winsock控件的常用方法
a、Accept 方法
接受新連接。
僅適用于 TCP 服務(wù)器應(yīng)用程序。在處理 ConnectionRequest 事件時用這個方法接受新連接。
在 ConnectionRequest 事件中使用 Accept 方法。ConnectionRequest 事件有一個對應(yīng)的參數(shù),即 RequestID 參數(shù)(新連接請求標(biāo)識),該參數(shù)應(yīng)該傳給 Accept 方法。
b、Bind 方法
用于 TCP 連接的 LocalPort(端口號) 和 LocalIP。(IP 地址)
在調(diào)用 Listen 方法之前必須調(diào)用 Bind 方法。
c、Close 方法
關(guān)閉連接。
d、GetData 方法
獲取當(dāng)前的數(shù)據(jù)塊并將其存儲在變體類型的變量中。
通??偸菍?nbsp;GetData 方法與 DataArrival 事件并用。
e、Listen 方法
偵聽模式。該方法僅適用于 TCP 連接。
當(dāng)有新連接時就會出現(xiàn) ConnectionRequest 事件。處理ConnectionRequest 事件時,應(yīng)用程序應(yīng)該(在一個新的控件示例上)用 Accept 方法接受連接。
f、SendData 方法
將數(shù)據(jù)發(fā)送給遠(yuǎn)程計算機(jī)。
大體了解了Winsock控件的使用之后,對理解GPRS通訊的原理來說,有一定的幫助。
接下來我們將根據(jù)Winsock控件的使用來大體理解GPRS通訊的原理。
1、啟動服務(wù)
原理為建立一個Tcp的連接,首先設(shè)定數(shù)據(jù)業(yè)務(wù)中心的IP地址及監(jiān)聽端口號,將其賦給Winsock控件,并用該控件進(jìn)行連接,連接成功后,進(jìn)行監(jiān)聽。
代碼如下:
myLocalIP = tcpServer(0).LocalIP‘本地機(jī)器的 IP 地址(局域網(wǎng)方式)
myLocalIP = "10.14.87.102"‘無線Modem的IP地址(撥號上網(wǎng)方式)
PlngTCPLocalPort = 2020 ‘Tcp服務(wù)器的監(jiān)聽端口號
Winsock.Bind (Port ,IP)
Winsock.Listen
需要注意的是如果計算機(jī)上既有本地連接又有無線Modem,在運(yùn)行程序(啟動服務(wù))時有可能失敗,所以,在編寫代碼的時候一定要注意自己使用的是哪種方式。因為LocalIP屬性獲取的是本地連接的IP,用無線Modem的時候IP是直接賦值。
再者就是兩者同時使用的時候,如果用的是無線Modem的撥號連接,則本地連接只能是同一個網(wǎng)段內(nèi)使用。
2、GPRS模塊連接請求處理
代碼如下:
Public Sub Winsock_ConnectionRequest(ByVal RequestID As Long)
Winsock.Accept Requested‘接收新連接
End Sub
原理為如果現(xiàn)在有連接請求,先把請求連接的GPRS模塊的IP地址記錄下來(用的是Winsock控件的RemoteHostIP屬性),再判斷保存所有GPRS模塊信息的數(shù)組中是否出現(xiàn)過,如果沒有出現(xiàn)過,保存該信息;如果出現(xiàn)過,先卸載該控件,然后重新加載該控件,保存信息。
3、GPRS模塊數(shù)據(jù)通訊處理
代碼如下:
Public Sub Winsock_DataArrival(ByVal bytesTotal As Long)
GprsLong = Winsock.BytesReceived‘返回接收到的(當(dāng)前在接收端緩沖區(qū)內(nèi)的)數(shù)據(jù)的數(shù)量
Winsock.GetData TempArr, vbByte‘用 GetData 方法來獲取數(shù)據(jù),取得的數(shù)據(jù)存放在TempArr中。
End Sub
原理為如果下面的GPRS模塊向數(shù)據(jù)業(yè)務(wù)中心發(fā)送數(shù)據(jù),數(shù)據(jù)業(yè)務(wù)中心用GetData方法將數(shù)據(jù)從接收緩沖區(qū)中讀出來,然后根據(jù)條件進(jìn)行判斷所收到的數(shù)據(jù)是否正確。
在用GetData方法進(jìn)行數(shù)據(jù)接收時需要注意是用哪種方式進(jìn)行通訊的,收到的數(shù)是Hex還是Ascii,這里接收的方式不一樣。如果是Ascii方式,接收的數(shù)據(jù)要賦給一個字符串變量,方式為:Winsock.GetData TempStr, vbString;如果是Hex方式,接收的數(shù)據(jù)要賦給一個以Byte 數(shù)據(jù)類型的數(shù)組,方式為:Winsock.GetData TempArr, vbByte 。
在接收數(shù)據(jù)之后,必須先要進(jìn)行數(shù)據(jù)編譯,如果碰到‘80H和90H’在一塊的將其轉(zhuǎn)換成為‘1AH’,碰到‘8AH和9AH’在一塊的將其轉(zhuǎn)換成為‘8AH’。
將接收到的數(shù)據(jù)進(jìn)行編譯之后,就可根據(jù)條件進(jìn)行數(shù)據(jù)處理了。
4、數(shù)據(jù)中心發(fā)送數(shù)據(jù)
代碼如下:
以十六進(jìn)制發(fā)送數(shù)據(jù)時為:
Dim Cmd(1 to 7) As Byte
Cmd(1)=&H4C
Cmd(2)=&H57
Cmd(3)=&H01
Cmd(4)=&H00
Cmd(5)=&H20
Cmd(6)=&H21
Cmd(7)=&H0D
Winsock.SendData Cmd
以Ascii方式發(fā)送數(shù)據(jù)為:
dim Cmd as string
Cmd=”#01A”+chr(13)
Winsock.SendData Cmd
原理為發(fā)送數(shù)據(jù)時,要知道該GPRS模塊的ID號和發(fā)送的數(shù)據(jù)。程序在發(fā)送時,先判斷該ID號是否收到過,如果沒有收到過,程序就不向外發(fā)送數(shù)據(jù);如果收到過,在發(fā)送的時候還要判斷GPRS模塊當(dāng)前的狀態(tài)(是否在線),只有所有條件都符合,才進(jìn)行發(fā)送數(shù)據(jù)命令。否則程序會出現(xiàn)錯誤,提示網(wǎng)絡(luò)連接失敗,不能發(fā)送數(shù)據(jù)。
5、停止服務(wù)
代碼如下:
Winsock.Close
原理為如果用戶要關(guān)閉服務(wù)的話,先關(guān)閉所有控件的連接,并把所有加載的控件卸載掉,清空存放GPRS模塊的信息,將數(shù)據(jù)返回長度置為0。
五、在TCP/UDP兩種方式下的數(shù)據(jù)通訊方法
1、TCP:
數(shù)據(jù)傳輸協(xié)議允許創(chuàng)建和維護(hù)與遠(yuǎn)程計算機(jī)的連接。連接兩臺計算機(jī)就可彼此進(jìn)行數(shù)據(jù)傳輸。
TCP方式下客戶端的連接為:
Winsock.RemoteHost = IP ‘’服務(wù)器端的IP和端口號
Winsock.RemotePort = Port
Winsock.Connect ‘’’連接
如果連接成功后會響應(yīng)Winsock 的 Connect事件。
TCP方式下服務(wù)器端的監(jiān)聽為:
Dim LocalPort as Long
Dim LocalIP as String
LocalPort =Winsock.LocalPort
LocalIP=Winsock.LocalIP
Winsock.Bind LocalPort, LocalIP ‘’連接
Winsock.Listen ‘’’偵聽
如果此時下面的終端有連接請求時,會響應(yīng)Winsock 的ConnectionRequest 事件。
2、UDP:
用戶數(shù)據(jù)文報協(xié)議 (UDP) 是一個無連接協(xié)議。跟 TCP 的操作不同,計算機(jī)并不建立連接。
UDP方式下客戶端通訊為:
Winsock.RemoteHost = IP ‘’服務(wù)器端的IP和端口號
Winsock.RemotePort = Port
Winsock. LocalPort = LocalPort ‘’本地端口
如果有兩個終端(A / B)之間通訊,則為:
A: B:
Winsock.RemoteHost = B_IP Winsock.RemoteHost = A_IP
Winsock.RemotePort = B_Port Winsock.RemotePort = A_Port
Winsock. LocalPort = A_Port Winsock. LocalPort = B_Port
UDP方式下服務(wù)器端監(jiān)聽為:
Winsock. LocalPort = Port
免責(zé)聲明
- 凡本網(wǎng)注明"來源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請必須注明智能制造網(wǎng),http://www.tzhjjxc.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
- 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
- 本網(wǎng)轉(zhuǎn)載并注明自其它來源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品來源,并自負(fù)版權(quán)等法律責(zé)任。
- 如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
ARCE2025亞洲機(jī)器人大會暨展覽會
展會城市:廣州市展會時間:2025-12-19