最新在整理硬十第三本书《DCDC电源篇》的书稿,出版社的编辑有一条意见是:关于我提供的插图线比较细!
这幅图是从仿真软件saber仿真出来的,通过Photoshop把线搞粗了之后,觉得坐标线不清晰。

但是,我再把当时写书的时候,仿真的电路找到,再仿真一下,工作比较大。同时,软件的坐标字符大小也不好调。
这个波形图是Buck开关电源的电感的电流曲线和开关节点SW的电压波形。

所以,我决定把这个波形图重新绘制出来。ChatGPT是可以利用Python画一些图形的,我觉得还挺方便,但是他的代码经常有一些Bug。我之前的方法,是在ChatGPT输出的代码上面进行手动修改,人工Debug。但是看代码太累。我觉得今天让他自己Debug。
第一次尝试,我直接提出了我的需求“用python画出开关电源电感的电流波形和开关节点电压波形”,如同跟其他人类对话一下。

结果不出我们所料,完全不是我们的期望。

问题1:电感波形不对。
问题2:我们期望展示多个周期,给出的波形只有一个周期。
常规操作,是我们去分析代码,看电感电流的函数,手动改代码,修订电感的波形,同时修改展示方式。
第二次尝试,这次我没有分析代码,而是把问题提出告诉ChatGPT。告诉他要绘制多个周期,并且坐标用中文(现在出版社不希望用英文。。。),电感的波形不对。喜出望外,第三个问题Chatgpt给出的程序根本跑不通。

结果,程序直接报错:

按照以前的习惯,都是自己看报错信息解BUG的。这一次,我们让ChatGPT自己解决问题。
第三次尝试,把报错信息发给ChatGPT,让他自己解Bug,看上去报错信息signal这个函数没有定义。


ChatGPT这次还给出了解决方案的讲解
说是:np.floor(2 * frequency * t) % 2来模拟方波信号,并且对电感电流的计算进行了修正。
运行结果竟然让人喜出望外的好,电感的电流波形连续了,而且还表示出了电源启动的过程:

但是这个波形仍然有个问题,这个电源没有表达出启动到稳定之后的状态。
第四次尝试,跟他约定了周期和上升之后稳定在2A的要求。