矩陣實驗室
打開應用程序
梁890319
密切註意
Matlab原始版本的比較
2021-11-14 09:43:52
11喜歡
梁890319
代碼年齡13年
密切註意
官方文檔主頁
文檔主頁-MathWorks中國
不同版本的比較
Mathworks-存檔的Mathworks文檔-Mathworks中國
發布說明:MATLAB-MATLAB & amp;Simulink- MathWorks中國
基本原則是使用最新版本。如果硬件資源有限,請參考主要改動選擇合適的版本,建議2020b及以後版本。
幾個關鍵的版本變化
1支持實時腳本和實時函數。mlx文件。
MATLAB?實時腳本和實時函數是交互式文檔,它們在壹個稱為實時編輯器的環境中將MATLAB代碼與格式化的文本、方程和圖像結合在壹起。此外,實時腳本可以存儲輸出,並將其顯示在創建它的代碼旁邊。
什麽是實時腳本或實時函數?-MATLAB & amp;Simulink- MathWorks中國
MATLAB R2016a-MATLAB在R2016a及更高版本中支持實時腳本,在R2018a及更高版本中支持實時函數。
操作系統——從R2019b開始,在MATLAB支持的所有操作系統中,MATLAB都支持實時編輯器。有關更多信息,請參見系統要求。
對於MATLAB版本R2016a到R2019a,MATLAB支持的幾個操作系統不支持實時編輯器。
不支持的操作系統包括:
紅帽企業版Linux 6 .
紅帽企業版Linux 7 .
SUSE Linux企業桌面版13.0及更早版本。
Debian 7.6及更早版本。
此外,壹些操作系統需要額外的配置才能在MATLAB版本R2016a至R2019a中運行實時編輯器。如果您無法在您的系統上運行實時編輯器,請聯系技術支持以獲取有關如何配置您的系統的信息。
2、壹種新的串行通信api
2019b新的串行通信api
串行端口接口有壹組新的功能和屬性。現有的函數仍然可以運行,但是建議使用新的函數名稱和屬性。新界面提高了性能。
通過使用serialportlist查看計算機上所有串行端口的列表,開始使用新界面。list = serialportlist
列表=
1×4字符串數組
" COM1" "COM3" "COM4" "COM8 "
然後,創建壹個serialport對象,將數據寫入設備,並從中讀取數據。
s = serialport("COM8 ",115200);
write(s,1:5," uint32 ")
read(s,5," uint 32 ");
3、用於tcpip通信的新api
R2020b優化了tcpip和串行通信。
TCP/IP客戶端接口有壹組新的功能和屬性。
您仍然可以使用現有函數來執行以下操作:
使用tcpclient函數創建與TCP/IP服務器的TCP/IP客戶端連接。
使用讀取功能從遠程主機讀取數據。
使用寫入功能將數據寫入遠程主機。
現在,您可以使用新函數執行以下操作:
使用echotcpip函數啟動TCP/IP echo服務器。
使用readline函數從遠程主機讀取壹行ASCII字符串數據。
使用writeline函數將壹行ASCII字符串數據寫入遠程主機。
使用configureTerminator函數為與遠程主機的ASCII字符串通信設置終止符。
使用configureCallback函數設置回調函數並觸發與遠程主機通信的條件。
使用刷新功能刷新緩沖區,以便與遠程主機通信。
通過創建壹個連接到TCP/IP echo服務器的tcpclient對象,向其寫入數據並從中讀取數據,開始使用TCP/IP客戶端接口。
echotcpip("on ",3030)
t = tcpclient("localhost ",3030)
write(t,1:5," uint8 ")
讀(t,5);
有關更多信息,請參見TCP/IP通信。
串行端口接口:改進的性能
串口接口的性能優於串行接口。例如,當使用默認波特率9600時,使用下面代碼中的serialport對象讀寫數據的速度大約是使用serial對象的1.1倍。
% s是壹個串行對象
函數計時測試(s,字節數)
fwrite(s,1:bytecount," uint 8 ");
fread(s,bytecount,“uint 8”);
結束
% s是壹個串行端口對象
函數計時測試(s,字節數)
write(s,1:bytecount," uint 8 ");
read(s,bytecount,“uint 8”);
結束
不同波特率下的大致執行時間如下:
南波特率
9600 19200 56000 115200
串行120毫秒68毫秒31毫秒23毫秒。
串行端口109毫秒55毫秒21毫秒11毫秒。
在運行Windows 10的英特爾至強處理器E5-1650V4 @ 3.60GHz測試系統上,使用timeit函數對代碼計時:
bytecount = 100;
timeit(@()timingTest(s,bytecount))
使用串行環回連接器完成測試。
有關更多信息,請參見串行端口設備。
4.支持python
2021b支持python3.9。
2021a支持3.8,停止支持3.6
2020b停止支持3.5。
2019a MATLAB現在除了支持CPython 2.7、3.5、3.6之外,還支持CPython 3.7。
2018b Python接口:在MATLAB和Python之間傳遞多維數值或邏輯數組。
2018a Python 3.4版:支持停止。
支持的Python版本-3.5或3.6。
5、git支持
2020a工程API:編程以獲得最新的Git版本
2019b比較Git分支:顯示差異並保存副本。
2019a源代碼管理集成:將MATLAB Git狀態與外部Git客戶端同步。
2021b新功能
1,實時編輯任務
通過用戶界面幫助用戶自動生成代碼和調整參數。
實時編輯器任務是可以添加到實時腳本中以執行壹組特定操作的應用程序。您可以將任務添加到實時腳本中,以探測參數並自動生成代碼。使用任務可以縮短開發時間,減少錯誤,縮短畫圖時間。
任務代表壹系列的MATLAB?訂單。您可以在內聯或右側顯示其輸出。
文件
將交互式任務添加到實時腳本中-MATLAB &;Simulink- MathWorks中國
錄像
什麽是實時編輯器任務?視頻- MATLAB
2、項目和版本管理
和Simulink項目視頻
3.驗證功能輸入
在MATLAB中?函數參數驗證用於聲明對函數輸入參數的特定限制。您可以約束函數輸入值的類、大小和其他方面,而無需在函數體中編寫代碼來執行這些測試。
驗證功能輸入視頻- MATLAB
新產品
RF PCB工具箱-印刷電路板的電磁分析
信號完整性工具箱-模擬和分析高速串行和並行鏈路。
重要更新
激光雷達工具箱-使用激光雷達查看器交互式地可視化、分析和預處理激光雷達點雲。
Simulink代碼檢查器-使用代碼檢查器上下文選項卡檢查兼容性,檢查代碼並直接在模型中查看結果。
Simulink控制設計-設計模型參考自適應控制器
符號數學工具箱——在MATLAB實時編輯器中為下壹步操作提供建議,指導用戶完成符號工作流。
小波工具箱-使用小波分析來處理和提取人工智能工作流程的信號和圖像的特征。
r 2021b-Matlab和Simulink產品系列的發布和更新-Matlab & amp;Simulink
發布說明-MATLAB & amp;Simulink- MathWorks中國
其他的
編輯器代碼:自動顯示代碼建議和完成
編輯器重構:自動將選中的代碼轉換成函數。
實時編輯器控件:設置滑塊、下拉列表、復選框和編輯字段的默認值。
實時編輯器動畫:將動畫導出為電影或動畫GIF。
實時編輯器:提高保存實時腳本或函數時的性能。
比較工具:通過改進的可用性、外觀和語法突出顯示來比較和合並文本文件。
SFTP功能:連接到sftp服務器。
HDF5接口:使用新功能支持HDF5 1.10.7。
直接從MATLAB調用Python函數
除了現有的對2.7、3.7和3.8的支持,MATLAB現在還支持CPython 3.9。
2021a
實時編輯器動畫回放控制:壹個控制動畫的交互式界面。
實時編輯器控件:通過將變量與下拉項和滑塊值相關聯,在實時腳本中創建動態控件。
XML文件:使用readtable、readtimetable和其他函數讀取、寫入和導入XML文件。
低級文件I/O功能和遠程數據:讀寫遠程存儲的文件。
保存和加載功能和遠程數據:保存、加載和追加數據到遠程存儲7.3版MAT文件。
讀取在線數據:使用readtable、audioread和其他讀取功能通過HTTP和HTTPS讀取文件。
數據壓縮功能:改進了zip/unzip和tar/untar的功能。
Jsonencode:為JSON文本添加縮進。
創建圖形實時編輯器任務:交互式創建圖形並生成代碼。
C++接口支持以下額外的C++語言函數。
在Java引擎應用程序中使用MATLAB值對象
支持的Python版本,即3.7或3.8。
增加了對IMU傳感器的支持。
現在,MATLAB對樹莓pi的支持包?硬件可以為以下IMU傳感器提供代碼生成和IO支持:
HTS221
LPS22HB
LSM303C
LSM6DSL
LSM9DS1
MPU-6050
MPU-9250
2020年b
比較工具:在MATLAB在線比較文本文件。
Readstruct和writestruct函數:在XML文件中讀寫結構化數據。
Readlines函數:將文本文件中的行作為字符串數組讀取。
HDF5文件和基於web的數據:使用現有的HDF5功能讀寫遠程存儲的HDF5文件。
HDF5文件:讀寫用Unicode字符編碼的文件名。
音頻文件和基於網絡的數據:使用audioread,audiowrite和audioinfo來讀取和寫入遠程存儲的音頻文件。
TCP/IP客戶端接口:新功能和屬性
TCP/IP客戶端接口有壹組新的功能和屬性。
您仍然可以使用現有函數來執行以下操作:
使用tcpclient函數創建與TCP/IP服務器的TCP/IP客戶端連接。
使用讀取功能從遠程主機讀取數據。
使用寫入功能將數據寫入遠程主機。
現在,您可以使用新函數執行以下操作:
使用echotcpip函數啟動TCP/IP echo服務器。
使用readline函數從遠程主機讀取壹行ASCII字符串數據。
使用writeline函數將壹行ASCII字符串數據寫入遠程主機。
使用configureTerminator函數為與遠程主機的ASCII字符串通信設置終止符。
使用configureCallback函數設置回調函數並觸發與遠程主機通信的條件。
使用刷新功能刷新緩沖區,以便與遠程主機通信。
串行端口接口:改進的性能
串口接口的性能優於串行接口。例如,當使用默認波特率9600時,使用下面代碼中的serialport對象讀寫數據的速度大約是使用serial對象的1.1倍。
源代碼控制:改進了設置Git源代碼控制的工作流程。
現在,您可以將nullptr傳遞給C++函數。
除了CPython 2.7、3.6和3.7之外,MATLAB現在還支持CPython 3.8。
Java包將被刪除。
實時編輯任務:以交互方式從USB網絡攝像頭捕捉圖像,並在實時腳本中生成MATLAB代碼。
2020年a
文件編碼:默認情況下,MATLAB代碼文件(。m)和其他純文本文件保存為UTF-8編碼文件。
切換功能:更靈活地比較對象
Copyfile和movefile函數:訪問基於Web的存儲服務,比如Amazon Web Services和Azure Blob storage。
數據存儲:使用writeall將數據從數據存儲寫入文件。
文本文件和電子表格文件:使用“WriteMode”參數追加、覆蓋或替換數據。
H5create和h5write:將字符串數據寫入HDF5文件。
Jsonencode:在MATLAB類中自定義編碼。
導入工具不再支持導入HDF5文件。以編程方式導入HDF4或HDF EOS