当前位置: 首页 > news >正文

浙江住房和城乡建设厅网站常用素材网站

浙江住房和城乡建设厅网站,常用素材网站,wordpress弹窗广告,招聘wordpress看到这个标题肯定有人会问:好好的multisim、 proteus之类的专门电路仿真软件不用,非要写一个简陋的python程序来弄,是不是精神失常了。实际上,我也不知道为什么要这么干,前两篇文章是我实际项目中的一些探索&#xff0…

        看到这个标题肯定有人会问:好好的multisim、 proteus之类的专门电路仿真软件不用,非要写一个简陋的python程序来弄,是不是精神失常了。实际上,我也不知道为什么要这么干,前两篇文章是我实际项目中的一些探索,但是这个纯属突发奇想。

 第一步:装matplotlib库

pip install matplotlib

 第二步:复制并运行代码

        我设计了一个计算了"串联分压"电路中的总电流以及每个电阻上的电压降的程序,如下。

import matplotlib.pyplot as plt
import matplotlib.patches as patchesplt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = Falsedef simulate_series_circuit(V, resistances):"""模拟一个给定电压(V)和一系列电阻值的串联电路。"""# 计算总电阻R_total = sum(resistances)# 根据欧姆定律计算电流: V = I * RI = V / R_total if R_total > 0 else 0# 计算每个电阻上的电压降voltage_drops = [I * R for R in resistances]return I, voltage_dropsdef draw_circuit(resistances, voltage_drops, current):"""绘制电路图并显示电压降和电流。"""fig, ax = plt.subplots()# 创建电池图例battery = patches.Rectangle((1, -0.25), 0.2, 0.5, edgecolor='black', facecolor='grey', label='电源')ax.add_patch(battery)plt.text(1.1, 0, '电源', horizontalalignment='center', verticalalignment='center')# 绘制电阻并显示电压for i, (R, V) in enumerate(zip(resistances, voltage_drops)):resistor_x = 2 + i * 1.5resistor = patches.Rectangle((resistor_x, -0.25), 1, 0.5, edgecolor='black', facecolor='orange',label=f'电阻 R{i + 1}' if i == 0 else "")ax.add_patch(resistor)plt.text(resistor_x + 0.5, 0, f'{V:.2f}V', horizontalalignment='center', verticalalignment='center')# 绘制导线plt.plot([1.2, 2], [0, 0], color='black', label='导线')for i in range(len(resistances) - 1):plt.plot([3 + i * 1.5, 3.5 + i * 1.5], [0, 0], color='black')plt.plot([2 + len(resistances) * 1.5, 3 + len(resistances) * 1.5], [0, 0], color='black')# 绘制从电路末端返回电池的线路plt.plot([3 + len(resistances) * 1.5, 3 + len(resistances) * 1.5, 1], [0, -0.25, -0.25], color='black')# 添加电流标签plt.text(1.5 + len(resistances) * 1.5, 0.3, f'电流 = {current:.2f}A', horizontalalignment='center',verticalalignment='center')# 设置限制并关闭坐标轴ax.set_xlim(0, 4 + len(resistances) * 1.5)ax.set_ylim(-1, 1)plt.axis('off')# 显示图例handles, labels = ax.get_legend_handles_labels()plt.legend(handles, labels, loc='upper right')plt.show()# 输入参数
V = float(input("请输入电源电压 (伏特): "))
resistances = [float(x) for x in input("请输入电路中的电阻值 (欧姆),用空格分隔: ").split()]# 运行仿真
current, voltage_drops = simulate_series_circuit(V, resistances)# 绘制并显示电路
draw_circuit(resistances, voltage_drops, current)

第三步:输入总电压和每个电阻并观察运行结果

        在运行窗口输入总电压(例:220V),每个电阻(56Ω,78Ω,90Ω,100Ω)

        观察运行结果如下:

http://www.yayakq.cn/news/340223/

相关文章:

  • 广州 骏域网站建设 陶瓷河南重大项目建设网站
  • 天津网站策划白杨seo博客
  • 有没有只做软装方案收设计费的网站用vs2010做网站登入
  • 苏州网站开发建设服务万家建设有限公司网站
  • 做茶叶网站的目的和规划1g做网站空间
  • 网站管理人员网页设计网站大全
  • 电子商务网站建设合同范本售后服务网站建设
  • 芜湖做网站硅胶科技东莞网站建设
  • 南宁seo计费管理seo精华网站
  • 自己做网站app企业网站备案不通过
  • 网站备案资料下载wordpress显示空白
  • tp5企业网站开发百度云网站内页权重怎么查
  • 江苏网站制作淄博网站建设公司羊肉片机
  • 炫酷业务网站中企动力销售工作内容
  • 顺德品牌网站建设价格建筑设计公司注册
  • c 网站开发wordpress只能看主页
  • 毕业设计网站就业网站建设方案
  • 郑州网站优化2345推广联盟
  • 淄博网站建设网站推广优化wordpress主题网址导航葬爱
  • 广州外贸营销型网站多语言网站制作
  • 上海城乡建设管理局网站筑站网络推广
  • 企业网站站内优化林州建筑网官网
  • 网站素材设计建各公司网站要多少钱
  • 做设计找参考的设计网站有哪些做二手家电网站怎样
  • 手机网站和电脑网站一样吗程序员公司有哪些
  • 做电影分享网站违法吗如何免费创建网站
  • 免费做文字图网站网站开发类的合同
  • 保山网站建设优化惠州企业网站建设
  • 网站维护和推广做搜狗网站关键词排名
  • 网站风格化设计方案网站怎么seo