
發布
注冊
/
登錄數據讀取的案例
VB讀取txt的數據
VB讀取txt的數據
1 概述
VB通常結合其他的計算工具進行相關的二次開發,在調用軟件進行計算時產生的結果文件很多都是txt格式的,或者有時候為了方便輸出會在計算軟件里面有意將想要的結果輸出為txt格式的文件進行存儲。
在VB里除了需要調用計算,還需要對txt的結果進行讀取并顯示,以及做相關的計算。VB在讀取txt數據時用到的幾個主要函數是LineInput和InputString。本次以一次實例,通過VB讀取并顯示txt文件的某些數據。
需要讀取的數據如圖1紅色方框標示。該txt文件一共100多行,需要的數據在第93行和第96行。
圖1 數據位置
2 方法
在VB里面拖曳生成一個簡單的界面,如圖2,用于顯示數據,增加一個按鈕,執行讀取和顯示操作。雙擊按鈕,進入代碼編輯界面,首先定義變量。如下所示:
圖2 VB界面
Dim m As Integer, n As Integer, i As Integer, s(1000) As String, str(1000) As String, ss(1000) As String
m = 1
n = 1
Dim input1 As Integer
Dim output1 As Integer
input1 = 1
接著讀取txt文件,讀取時先獲得VB界面得到的文件位置,采用FileOpen函數,代碼如下:
FileOpen(1, 文件位置.Text & "\linearStressResults.txt", OpenMode.Input)
得到txt文件的行數,VB讀取txt文件是逐行逐行的讀,一般輸出的結果格式都是固定的,具體位置也是固定的,因此可以采用位置控制的方法找到需要的數據。
展開 國產S7200配合485讀取數據時出現的一些問題
1、請問一臺PLC是否可以通過一個RS485接口接工控機發送來的三路數據信號?工控機上裝了三個數據采集終端。如果可以的話請問怎樣區分三路信號?
答: PLC可以通過485接工控機發的出來的數據來讀取數據采集終端的數據,通過自由口通信的RCV命令接收工控機發出來的數據。
2、為什么RS485不能完全替代RS232呢?我們的觸摸屏和PLC通訊或PC與PLC通訊都是要用RS232為什么不能都用RS485呢?資料上說485的優點比232多多啦!為什么不能完全替代呢?
答:因為首先232是計算機的標準信號,是一個業界標準,存在范圍廣泛;其次232可以實現全雙工通信,在發送數據的同時可以接收,可以用對講機和電話來理解,485是半雙工通信,相當于對講機,一個時間只能一個講話,232是電話機方式,雙方都可以同時說話。
3、我現在用的筆記本電腦裝有MCGS通用軟件,還有一臺西門子200PLC,數據線有USB轉232,還有232轉485.另外還有一個PPI編程電纜,我用自由口監控200時為什么數據監測不到呢,讀寫都不行。想請問高手我應該如何設置呢。我想監視和控制輸出點
答:485是基于232串口通信標準衍生出來的一種遠距離,半雙工通信的硬件標準,相對于232標準來說,485采用差分信號進行收發,可以得到更好的干擾抑制效果,所以通信距離更遠,理想狀態可以達到1.2KM的通信距離,另外485適用于多設備組成總線使用;由于其是半雙工的工作模式,所以在發送時不可接收,接收時不可發送,而232信號屬于全雙工,接收的同時也可以發送。自由口做數據監視,這個描述表達本身是缺少很多條件或者問題不清晰的, 存在問題:a、使用編程軟件監測還是使用MCGS監測?
展開 讀取csv文件中指定的行數據-轉載
######創建csv文件,并按行讀取數據#######
import numpy as np
import pandas as pd
import csv
# 1.創建csv文件
with open('123.csv','w',newline='') as file:
csv_writer=csv.writer(file)
# 2.讀取csv指定行的數據
with open('C:\\Users\\86178\\Desktop\\python\\pythonProject\\ethylene_methane.csv', 'r') as f:
reader = csv.reader(f)
index = 0
for row in reader:
index = index + 1
# 3.要求
if index %30000 ==0:
# 4.寫入滿足要求的行數據
csv_writer.writerow(row)
######添加表頭#######
# 1.讀取csv文件
dg = pd.read_csv('C:\\Users\\86178\\Desktop\\python\\pythonProject\\123.csv',header=None)
# 2.添加表頭
dg = dg.rename(columns = {0:'Num', 1:'Time (seconds)', 2:'Methane conc (ppm)',3:'Ethylene conc(ppm)',4:'Sensor1
展開 Abaqus利用region讀取結果數據
Abaqus利用region讀取結果數據
長安CAE
Abaqus計算完成后,為輸出某部分模型的結果數據,需要用到region,并且配套使用的是getSubset函數。
示例一創建一個變量center,將一個叫做PUNCH的節點set賦值給這個變量,通過整個模型的位移場displacement得到該節點set的輸出數據,代碼如下:
center = odb.rootAssembly.instances['PART-1-1'].nodeSets['PUNCH']
centerDisplacement = displacement.getSubset(region=center)
centerValues = centerDisplacement.values
for v in centerValues:
print v.nodeLabel, v.data
其中的displacement是已經創建好的位移場數據,centerDisplacement變量得到該節點集的所有數據,centerValues變量得到該節點集的數值數據,通過循環輸出節點號和當前數據。
展開 
Python讀取Excel表格的數據并進行冒泡排序
工程計算的時候很多數據是存放在Excel表格中的,我們可能需要通過Python去讀取Excel表格中的數據,并作相關的計算,如何按照想要的方式讀取這些數據就很重要,這里整理一下通過Python的pandans去獲取表格某一列或者某一行的數據的方式。
首先,給出如下的一個表格,文件的位置在C:\Users\workstation\Desktop\234.xlsx,接下來就要按照
然后再Python中導入pandans
import pandas as pd
通過如下函數讀取表格
df = pd.read_excel(r"C:\Users\workstation\Desktop\234.xlsx",sheet_name=0),其中sheet_name=0表示讀取sheet1,這樣整個表格就讀取進來了。
年齡 身高
0 2 4
1 5 7
2 7 10
如何獲取年齡這一列,只需要如下的代碼df['年齡'].values就可獲取這一列除開表頭的所有數據,同樣的身高也可以通過df['身高'].values獲取.
0 2
1 5
2 7
Name: 年齡, dtype: int64
獲取某一行要也是類似的df.values[0],就可以獲取相應行的數值
[2 4]
這樣就可以很輕松的導入數據并進行處理了。
展開 fluent讀取Maxwell磁場數據的方法 ¥198
<p>fluent讀取Maxwell磁場數據的方法</p><p> 在計算磁流體的時候需要考慮磁場的分布,考慮流體的分布,那么fluent中的MHD模塊能夠很好的耦合兩者之間的效果,默認的mhd是輸入磁場定值來確定空間的磁場分布,那么有時候是變換的磁場,那么就需要其他軟件來完成磁場的計算,那么Maxwell軟件作為ANSYS的磁場計算軟件,越來越多的得到了應用。當然其磁場的計算是比較方便的,fluent的流體計算也是比較方便的,那么兩者之間如何傳遞磁場數據呢?</p><p> 先看一下傳遞的效果,下面為一個線圈在空間的磁場分布如圖所示</p><div contenteditable="false" width="100%">
<img src="https://img.jishulink.com/202204/imgs/d6c521ffed7848ba8ae2fe02260181a5.png" title="Picture1.png" alt="Picture1.png" style="max-width: 760px; width: 371px; height: 200px;" width="371" height="200" data-mobile-src="https://img.jishulink.com/202204/imgs/d6c521ffed7848ba8ae2fe02260181a5.png?image_process=/format,webp/resize,w_371" data-pc-src="https://img.jishulink.com/202204/imgs/d6c521ffed7848ba8ae2fe02260181a5.png?
展開 Abaqus利用region讀取結果數據
Abaqus計算完成后,為輸出某部分模型的結果數據,需要用到region,并且配套使用的是getSubset函數。
示例一創建一個變量center,將一個叫做PUNCH的節點set賦值給這個變量,通過整個模型的位移場displacement得到該節點set的輸出數據,代碼如下:
center = odb.rootAssembly.instances['PART-1-1'].nodeSets['PUNCH']
centerDisplacement = displacement.getSubset(region=center)
centerValues = centerDisplacement.values
for v in centerValues:
print v.nodeLabel, v.data
其中的displacement是已經創建好的位移場數據,centerDisplacement變量得到該節點集的所有數據,centerValues變量得到該節點集的數值數據,通過循環輸出節點號和當前數據。
展開 ABAQUS批量提交Job與Python讀取ODB結果應力應變數據
問題2
如何從ODB結果文件中讀取計算結果數據
第二個問題是大家經常要面對的,常規的數據提取采用ABAQUS自帶的后處理工具已經能滿足需求了,但是如果我們需要進行一些寫出文本,數據篩選,數據的二次計算處理。。。,我們就需要用程序語言的幫助了。
針對今天的問題——
提取結果并寫出到文本
,如果用自帶的工具,可以導出abaqus.rpt文件,不過這種方式并不能滿足我們較為苛刻的要求,用python程序會的自由度會更大一些。
另外需要說明的是,如果我們僅僅只是看看某單元或者節點的各種計算結果,或者簡要的數據處理,臨時用一用,可以采用如下方式,不必費心寫復雜的程序,不值當浪費時間,
青春易逝,頭發寶貴
。當然了,通過阿信這里給出的基本程序改一改,能省幾根頭發。
限于時間關系,這里只列出基本的應力提取程序,寫入文本比較簡單,隨意百度即可實現,不再給出。
展開 電子產品可靠性仿真 (ECAD數據直接讀取、跌落、熱、密封、斷裂等)
培訓時間:
2016年6月7日
14:00 - 15:00
電路的集成規模越來越大,I/O數越來越多,使得PCB互連密度不斷加大,隨之帶來許多PCB可靠性問題。ANSYS 17.0版本集成針對PCB的Trace Mapping強大功能,可以快速從EACD中直接導入PCB熱物參數,從而能在Mechanical中進行準確的PCB板熱力、疲勞、隨機振動、跌落等可靠性問題的仿真。本此網絡培訓將介紹Trace Mapping功能,并演示ANSYS解決PCB板可靠性問題的案例。
報名方式
PC端報名:
在瀏覽器中輸入
http://www.ansys.com/zh-cn/About-ANSYS/Events
在選擇您需要參加的網絡培訓即可
微信端一鍵報名:
微信已綁定微信的用戶一鍵報名:
打開ANSYS公眾號,點擊下面的菜單:
“最新活動“點擊“活動報名”,選擇活動參加報名即可。
未綁定微信用戶的報名方式:
1).關注ANSYS官方微信
2).點擊進入到ANSYS微信,點擊“咨詢反饋”-“注冊綁定”
3).點擊”最新活動“-“網絡培訓”,選擇活動參加報名即可。
展開 Tangent.opk下載
插件安裝
Tangent插件安裝:安裝非常簡單,只需在安裝好origin后雙擊“Tangent.opk”文件,或將其拖拽至origin軟件窗口內即可
Tangent插件
雙擊或拖拽到origin窗口
Tangent窗口
左右分別為數據讀取器和指針按鈕
注意:該插件是在2006年開發的,可在Origin 7.0、7.5、8.0等以上版本使用,經小通測試Origin2018等較新的版本可能會有bug,忘周知。
切線工具使用方法
輕松繪制Origin切線
Tangent插件使用方法:使用數據讀取器,選中曲線上的一個點雙擊(按鍵盤上的“Enter”)即可繪制出曲線在該點處的切線。
數據讀取器選中曲線上的某一點。
Data Display會顯示該點的坐標。
雙擊曲線上的點(或選中后按Enter)。
斜率會顯示在圖片上方的slope。
注意數據表右側兩列。
數據表會新建兩列:
Bdrv列:A列對應的斜率值
Btgt列:切線的Y軸坐標值(與A列X軸坐標對應)
若將Btgt列重命名
再雙擊另一點時,會同時出現兩條切線。
注意:若沒有重命名Btgt列,則只會出現一條切線。
此時數據表會再新建一列。
同樣,Btgt列為新建切線的Y軸坐標值(與A列X軸坐標對應)。Tangent.opk是不是很好用?
下載地址:Tangent.opk下載
展開 電流檢測放大器:遠程電流檢測配置
在某些應用中,系統數據讀取板離監測系統電流的電路較遠。
這種情況有兩個問題:1)長的傳輸線長度會導致電流檢測放大器的輸出和輸入到系統數據讀取板之間產生較大的不想要的壓降;2)兩板間的雜散接地電阻會產生電壓誤差。精密的輸出電流測量被更精確地讀取,因為它克服了由于板間的接地壓降和傳輸線的電壓損耗造成的誤差。
Current Measurement Circuit Board:電流測量電路板
System Data Readout Board:系統數據讀取板
Line Receiver:線性接收器
Stray ground resistance between boards:板間雜散接地電阻
圖1.簡化的遠程電流檢測電路圖
如圖1所示,在OUT引腳和REF引腳之間添加了RIOUT電阻,以將電壓輸出轉換為從REF引腳流入讀取板的電流輸出。該電路用以以由于接地壓降或噪聲產生的板間低電位工作。電流輸出只與NCS21xR的正常輸出電壓有關:
對于RIOUT,1k?電阻值總是一個易于達到的值,因為它提供1mA/V的標度。
在讀取板上,為了簡單起見,RITOV可等于RIOUT,以提供相同的壓降。重要的是要考慮到RITOV和RIOUT在電流測量路徑中增加額外的壓降。電流源可提供足夠的適應性,以克服大多數接地壓降、雜散電壓和噪聲。但是,如果噪音或接地壓降超過1V,精度就會下降。
為了增加應用的動態范圍,讀取板上的RITOV電阻值可從寬范圍的電阻值中選擇,不必是1 KΩ或匹配RIOUT電阻值。
對于那些熟練使用差分放大器進行設計的人來說,可進一步增強。通常,使用這種方法對精度和共模抑制的影響是最小的,但無論如何,如圖2所示,緩沖參考輸入將保持NCS21xR電流檢測放大器的高性能。
展開 
智能數據建模軟件DTEmpower 2025R3版本發布
執行流程支持與平臺內置功能無縫銜接:上游可通過數據存儲節點輸出 CSV 等格式的中間數據,外部程序調用節點讀取數據后執行自定義清洗、特征工程等操作,下游可通過數據讀取節點將處理結果回讀至平臺。
六、數據讀取節點改造
優化數據讀取節點,在保留原有從項目中獲取文件能力的基礎上,新增本地磁盤文件直讀功能,可直接選擇磁盤路徑讀取文件,適配更多數據接入場景。
歡迎到天洑官網下載體驗,安裝就自帶30天免費試用!
經典ANSYS數據讀寫
經典ANSYS數據讀寫
1.GUI操作步驟
第一步:創建宏
*CREATE,data_read
第二步:定義數組參數,用戶首先要確定數組的類型和大小(P31)
*DIM,data_file,ARRAY,3,3,1, , ,
第三步:讀取數組參數:
*VREAD,data_file,'userarrayparameters','txt',' ',IJK,3,3,1, ,
(3f2.0)
第四步:列表出當前的參數和縮略語(P90)
*status,data_file
2.整體命令流
!數據的讀取
*CREATE,data_read!創建數據讀取宏
*DIM,data_file,ARRAY,3,3,1, , ,
*VREAD,data_file,'userarrayparameters','txt',' ',IJK,3,3,1, ,
(3f2.0)
*END
*use,data_read!運行數據讀取宏
*status,data_file
!數據的寫入
*CREATE,data_write!創建數據寫入宏
*cfopen,data_file_write,txt
!*DIM,data_file_write,ARRAY,3,3,1, , ,
*vwrite, data_file (1,1), data_file (1,2), data_file (1,3)
(3f6.0)
*cfclos
*END
*use,data_write!運行數據寫入宏
注意:
1.*VWRITE命令不能在ansys命令窗口中直接輸入,可以將命令寫在宏文件中。
展開 【DTEmpower案例操作教程】智能數據挖掘
圖7
專業模式數據建模
點擊確定之后,原始數據的載入即以“數據讀取”節點的形式加入至建模流程中。在建模畫布與左側資源樹中均可以觀察到新增的節點,如圖8所示。
圖8
數據集加入流程
4)變量設定
在建模流程中,原始數據載入后,需要依托“數據操作-變量設定”節點將變量指定為輸入變量和輸出變量兩類,后續的數據清洗、特征工程和模型訓練都將依托于輸入和輸出變量進行。
在頂部菜單欄中單擊工具箱中的“數據操作”,即可展開右側工具箱。選擇其中的“變量設定”控件并拖拽至畫布中,即完成了新節點的添加,如圖9所示。
圖9 添加變量設定節點
此時可以單擊添加至建模流程中的變量設定節點,在節點屬性彈窗中修改節點名、節點描述,方便查看和理解,如圖10所示。需要注意的是,該操作不是必須的。
圖10
修改節點名稱及描述
數據讀取節點讀取的原始數據將傳遞至變量設定節點,進行輸入和輸出變量的設定,因此需要連接數據讀取節點和變量設定節點,如圖11所示。
圖11
連接數據載入和變量設定節點
數據讀取節點和變量設定節點連接完成后,會自動彈出節點間輸入輸出量的關聯列表,系統會默認對類型匹配的輸入輸出量進行自動關聯,用戶可以根據自身需求進行增刪改操作,如圖12所示。
圖12
連線配置
5)異常點清洗
在DTEmpower提供自研智能數據清理算法AIOD,節點執行完成后,會為每條算例提供一個異常風險評分,分值越高該算例為異常點的可能性越高。將工具箱切換為數據清理,然后將AIOD節點加入至建模流程,如圖13所示。
展開 S7-400 CPU間的通訊編程實例
三、在出口段PLC3-MX的FC4通訊程序中,新增讀寫遠程CPU(連接號為6)數據的功能塊,將SX中的MD3034數據讀取至MX的MD3034中。
四、在NetPro中,可以看到MX與SX之間的DP通訊鏈路的本地ID為6和7,通訊伙伴SX的ID為1和2。
五、在中央段PLC2-SP的FC300程序塊中,使用SFB14系統功能塊,通過中央段PLC2-SP與出口段PLC3-MX之間的7#鏈路,將MX中的MD3034數據讀取到SP的MD3034中。
六、在SP中的FC300程序中,對厚度測量信號進行處理,并判斷出厚度異常的起、止位置,發出貼標信號。
總結:借助CPU之間的通訊連接,實現了跨CPU的數據通訊,從而使測厚儀與貼標機協無縫對接,準確標注出厚度缺陷位置,為后部工序準確高效的處理缺陷提供了可靠手段。
展開