今年春節(jié)假期,DeepSeek火爆全網(wǎng),再次掀起全球?qū)I的熱潮,幾乎全網(wǎng)都在討論和使用DeepSeek,在人們?yōu)锳I技術(shù)帶來的“AI自由”歡呼雀躍之際,也有人開始擔憂AI是否將會取代人類的工作崗位?今天我們分別利用DeepSeek和ChatGPT寫代碼,對儀器編程做自動化的測試,看看DeepSeek和ChatGPT是否可以完全取代軟件工程師編寫代碼的崗位? 我們來看看DeepSeek能否幫軟件工程師寫源代碼,實現(xiàn)儀器編程做自動化測試,可以讓工程師偷偷懶,今天我讓DeepSeek利用Python編程控制羅德的矢量信號源SMW200A,編寫一個QPSK數(shù)字調(diào)制信號,并把QPSK數(shù)字調(diào)制信號的基帶IQ數(shù)據(jù)發(fā)到SMW200A內(nèi)存中,并設(shè)置載波頻率和輸出功率等。 下面是DeepSeek寫代碼的視頻過程。 在DeepSeek對話框輸入如下: DeepSeek進行了深度思考并對需求進行分析,整個過程耗時40秒。然后回答如下: 嗯,用戶想要用Python控制羅德與施瓦茨的SMW200A矢量信號源,生成QPSK數(shù)字調(diào)制信號,并將數(shù)據(jù)發(fā)送到儀器內(nèi)存然后輸出。首先,我需要考慮如何通過Python與SMW200A通信。通常這類儀器支持SCPI指令,所以可能需要使用PyVISA庫來連接和控制設(shè)備。 首先,用戶需要確保SMW200A已經(jīng)正確連接,比如通過LAN或者GPIB接口。然后,安裝PyVISA和適當?shù)暮蠖?,比如NI-VISA或者PyVISA-py??赡苄枰葯z查儀器的IP地址,確保網(wǎng)絡(luò)連接正常。 接下來,生成QPSK調(diào)制信號的數(shù)據(jù)。QPSK每個符號代表2個比特,所以需要生成對應(yīng)的符號序列。比如,用戶可能需要生成隨機的二進制數(shù)據(jù),然后將其轉(zhuǎn)換為符號,比如0,1,2,3,對應(yīng)不同的相位。不過,實際生成基帶I/Q數(shù)據(jù)可能需要將符號映射到復(fù)數(shù),比如QPSK的四個相位點對應(yīng)的復(fù)數(shù),例如(1+1j), (-1+1j)等,但可能需要歸一化處理。或者,可能需要生成符號的I和Q分量,比如對于QPSK,每個符號的I和Q都是±1的值,然后組合成復(fù)數(shù)波形。 然后,將生成的I和Q數(shù)據(jù)轉(zhuǎn)換為儀器可以接受的格式。SMW200A可能需要將數(shù)據(jù)以二進制塊的形式傳輸,比如使用SCPI命令“SOURce1:BB:ARBitrary:WAVeform:DATA <block_data>”。這時候需要注意數(shù)據(jù)的格式,比如是32位浮點數(shù)還是其他類型??赡苄枰獙?shù)據(jù)轉(zhuǎn)換為字節(jié)流,并添加相應(yīng)的頭信息,比如長度信息。 然后,需要配置信號源的調(diào)制參數(shù)。比如設(shè)置調(diào)制方式為QPSK,符號率,濾波器的類型(如升余弦滾降濾波器),設(shè)置載波頻率、功率等參數(shù)??赡苄枰褂靡幌盗蠸CPI命令來配置這些參數(shù),比如“SOURce1:BB:QSK:STATe ON”之類的命令,但具體命令需要參考SMW200A的用戶手冊,因為不同儀器的SCPI命令可能不同。 在發(fā)送數(shù)據(jù)到儀器內(nèi)存時,可能需要先清除現(xiàn)有的波形,再上傳新的波形數(shù)據(jù)。然后選擇該波形作為信號源,并激活基帶信號輸出。同時,可能需要設(shè)置正確的采樣率,以確保符號率和采樣點數(shù)的匹配。例如,符號率乘以每個符號的采樣點數(shù)得到基帶信號的采樣率。 用戶可能還需要考慮信號的濾波和脈沖成形,比如使用根升余弦濾波器。這時候可能在儀器內(nèi)部配置濾波器參數(shù),或者在生成基帶數(shù)據(jù)時預(yù)先進行成形濾波。如果用戶希望儀器處理成形濾波,可能需要配置相應(yīng)的濾波器設(shè)置;否則,用戶需要在生成I/Q數(shù)據(jù)時自己完成脈沖成形,比如通過卷積實現(xiàn)。 可能的錯誤點包括:SCPI命令的正確性,數(shù)據(jù)格式是否正確,比如字節(jié)順序、浮點數(shù)的格式,塊數(shù)據(jù)傳輸?shù)母袷绞欠裾_,符號率和采樣率的匹配是否正確,以及儀器的狀態(tài)是否正確切換(比如先停止輸出,再上傳數(shù)據(jù),再啟動輸出)。 另外,用戶可能需要考慮基帶信號的時長,確保內(nèi)存足夠存儲生成的數(shù)據(jù)。如果數(shù)據(jù)量很大,可能需要分塊傳輸,但一般SMW200A可能支持較大的波形長度。 總結(jié)步驟大概是:連接儀器,生成QPSK的I/Q數(shù)據(jù),配置信號源參數(shù),上傳波形數(shù)據(jù)到儀器,啟動輸出。需要參考儀器的編程手冊確認具體的SCPI命令,比如設(shè)置調(diào)制方式、濾波器參數(shù)、載波頻率、功率等。同時,確保生成的數(shù)據(jù)符合儀器的要求,比如數(shù)據(jù)類型、歸一化范圍等。 DeepSeek用 Python 控制羅德與施瓦茨 SMW200A 矢量信號源生成 QPSK 調(diào)制信號并發(fā)送到SMW200A內(nèi)存中的示例代碼截屏如下: DeepSeek給出的關(guān)鍵步驟說明如下:
DeepSeek給出注意事項:
建議參考 SMW200A 編程手冊確認具體SCPI命令格式,特別是關(guān)于:
如果需要更復(fù)雜的調(diào)制特征(如脈沖成形、編碼等),需要在數(shù)據(jù)生成階段或通過儀器內(nèi)置功能實現(xiàn)。 DeepSeek可以完成儀器基本控制,比如:設(shè)置頻率,功率等參數(shù)。如果需要做更深入的儀器編程控制,比如說要獲取儀器的采集數(shù)據(jù)以及對信號做處理和對把自定義的數(shù)據(jù)自動下載到矢量源或AWG的內(nèi)存中等復(fù)雜操作,目前DeepSeek可能需要一些提高,不能完全取代軟件工程師的崗位。我們工程師以去積極的利用AI技術(shù),在AI的輔助下提高工作效率,寫出更高質(zhì)量的代碼。 AI并非可以解決所有的技術(shù)問題,并非完全取代工程師。所以我個人認為AI技術(shù)的到來,并非是工程師的天就塌了。我們工程師應(yīng)該積極的去擁抱AI技術(shù),將其AI作為提升自身能力的一個強大工具,為我們工程師打開一扇全新的大門。 AI與人類并非簡單的取代關(guān)系,而是協(xié)同共進的伙伴,我們可以在AI的輔助下,更加專注創(chuàng)新和探索未知的世界,勇攀科學(xué)技術(shù)的高峰。 AI的到來不是工程師的末日,而是可以使我們工程師飛翔的翅膀更加堅定有力,開創(chuàng)美好的未來。 END |
|
來自: fredli1964 > 《技術(shù)》