登录/注册

pcb布线宽度计算器

更多

PCB布线宽度计算器

下面是一个基于IPC-2221标准的PCB布线宽度计算器,可以根据电流、铜箔厚度、温升和布线层类型计算所需的最小线宽。

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>PCB布线宽度计算器</title>
    <style>
        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }

        body {
            background: linear-gradient(135deg, #1a2a6c, #b21f1f, #1a2a6c);
            color: #333;
            min-height: 100vh;
            padding: 20px;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .container {
            background-color: rgba(255, 255, 255, 0.95);
            border-radius: 15px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
            width: 100%;
            max-width: 800px;
            padding: 30px;
            margin: 20px;
        }

        header {
            text-align: center;
            margin-bottom: 30px;
            padding-bottom: 20px;
            border-bottom: 2px solid #e0e0e0;
        }

        h1 {
            color: #1a2a6c;
            font-size: 32px;
            margin-bottom: 10px;
        }

        .subtitle {
            color: #666;
            font-size: 18px;
            margin-top: 5px;
        }

        .calculator {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 25px;
        }

        .input-group {
            margin-bottom: 20px;
        }

        label {
            display: block;
            margin-bottom: 8px;
            font-weight: 600;
            color: #444;
        }

        input[type="number"], select {
            width: 100%;
            padding: 14px;
            border: 2px solid #ddd;
            border-radius: 10px;
            font-size: 16px;
            transition: border-color 0.3s;
        }

        input[type="number"]:focus, select:focus {
            border-color: #1a2a6c;
            outline: none;
            box-shadow: 0 0 0 3px rgba(26, 42, 108, 0.2);
        }

        .radio-group {
            display: flex;
            gap: 20px;
            margin-top: 10px;
        }

        .radio-option {
            display: flex;
            align-items: center;
        }

        .radio-option input {
            margin-right: 8px;
        }

        .results {
            background: linear-gradient(135deg, #1a2a6c, #4a6fc5);
            color: white;
            border-radius: 10px;
            padding: 25px;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .results h2 {
            text-align: center;
            margin-bottom: 20px;
            font-size: 24px;
        }

        .result-item {
            display: flex;
            justify-content: space-between;
            padding: 15px 0;
            border-bottom: 1px solid rgba(255, 255, 255, 0.3);
        }

        .result-value {
            font-weight: 700;
            font-size: 20px;
        }

        .unit {
            font-size: 16px;
            opacity: 0.9;
        }

        button {
            background: linear-gradient(to right, #1a2a6c, #b21f1f);
            color: white;
            border: none;
            padding: 16px;
            border-radius: 10px;
            font-size: 18px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
            margin-top: 20px;
            width: 100%;
            letter-spacing: 1px;
        }

        button:hover {
            transform: translateY(-3px);
            box-shadow: 0 7px 15px rgba(0, 0, 0, 0.2);
        }

        button:active {
            transform: translateY(0);
        }

        .info-section {
            background-color: #f0f5ff;
            border-radius: 10px;
            padding: 20px;
            margin-top: 30px;
            border-left: 5px solid #1a2a6c;
        }

        .info-section h3 {
            color: #1a2a6c;
            margin-bottom: 15px;
        }

        .info-section ul {
            padding-left: 20px;
        }

        .info-section li {
            margin-bottom: 10px;
            line-height: 1.5;
        }

        .formula {
            font-family: monospace;
            background-color: #f8f8f8;
            padding: 15px;
            border-radius: 8px;
            margin-top: 10px;
            font-size: 16px;
            border: 1px solid #ddd;
        }

        @media (max-width: 768px) {
            .calculator {
                grid-template-columns: 1fr;
            }

            .results {
                margin-top: 20px;
            }
        }

        .note {
            font-size: 14px;
            color: #666;
            margin-top: 5px;
            font-style: italic;
        }
    </style>
</head>
<body>
    <div class="container">
        <header>
            <h1>PCB布线宽度计算器</h1>
            <p class="subtitle">基于IPC-2221标准,计算导线宽度以满足电流要求</p>
        </header>

        <div class="calculator">
            <div class="input-section">
                <div class="input-group">
                    <label for="current">电流 (A):</label>
                    <input type="number" id="current" min="0.001" step="0.001" value="1.0">
                </div>

                <div class="input-group">
                    <label for="thickness">铜箔厚度:</label>
                    <select id="thickness">
                        <option value="0.5">0.5 oz/ft² (17.5μm)</option>
                        <option value="1" selected>1 oz/ft² (35μm)</option>
                        <option value="2">2 oz/ft² (70μm)</option>
                        <option value="3">3 oz/ft² (105μm)</option>
                    </select>
                </div>

                <div class="input-group">
                    <label for="tempRise">最大允许温升 (°C):</label>
                    <input type="number" id="tempRise" min="1" max="100" value="10">
                </div>

                <div class="input-group">
                    <label>布线层:</label>
                    <div class="radio-group">
                        <div class="radio-option">
                            <input type="radio" id="outer" name="layer" value="outer" checked>
                            <label for="outer">外层</label>
                        </div>
                        <div class="radio-option">
                            <input type="radio" id="inner" name="layer" value="inner">
                            <label for="inner">内层</label>
                        </div>
                    </div>
                </div>

                <button id="calculate">计算最小线宽</button>
            </div>

            <div class="results">
                <h2>计算结果</h2>
                <div class="result-item">
                    <span>最小线宽 (mm):</span>
                    <span class="result-value" id="width-mm">0.00</span>
                </div>
                <div class="result-item">
                    <span>最小线宽 (mil):</span>
                    <span class="result-value" id="width-mil">0.00</span>
                </div>
                <div class="result-item">
                    <span>所需截面积 (mm²):</span>
                    <span class="result-value" id="area">0.0000</span>
                </div>
                <div class="result-item">
                    <span>电流密度 (A/mm²):</span>
                    <span class="result-value" id="density">0.00</span>
                </div>
            </div>
        </div>

        <div class="info-section">
            <h3>计算说明</h3>
            <p>本计算器使用IPC-2221标准中的公式计算导线宽度:</p>
            <div class="formula">
                I = k * ΔT<sup>0.44</sup> * A<sup>0.725</sup>
            </div>
            <p>其中:</p>
            <ul>
                <li><strong>I</strong> = 电流 (安培)</li>
                <li><strong>ΔT</strong> = 温升 (摄氏度)</li>
                <li><strong>A</strong> = 导线横截面积 (平方毫米)</li>
                <li><strong>k</strong> = 常数:外层=0.048,内层=0.024</li>
            </ul>
            <p class="note">注意:计算结果为理论最小值,实际设计中应考虑安全裕量(建议增加20-50%)。高频信号需要考虑趋肤效应。</p>
        </div>
    </div>

    <script>
        document.getElementById('calculate').addEventListener('click', calculateWidth);

        function calculateWidth() {
            // 获取输入值
            const current = parseFloat(document.getElementById('current').value);
            const thickness = parseFloat(document.getElementById('thickness').value);
            const tempRise = parseFloat(document.getElementById('tempRise').value);
            const isOuterLayer = document.getElementById('outer').checked;

            // 验证输入
            if (isNaN(current) || current <= 0) {
                alert('请输入有效的电流值(大于0)');
                return;
            }
            if (isNaN(tempRise) || tempRise <= 0) {
                alert('请输入有效的温升值(大于0)');
                return;
            }

            // 设置常数 k
            const k = isOuterLayer ? 0.048 : 0.024;

            // 计算所需的导线横截面积(单位:平方毫米)
            // 公式:A = [ I / (k * ΔT^0.44) ]^(1/0.725)
            const area = Math.pow(current / (k * Math.pow(tempRise, 0.44)), 1/0.725);

            // 将面积转换为毫米单位
            const area_mm2 = area;

            // 计算电流密度
            const currentDensity = current / area_mm2;

            // 铜箔厚度转换:oz到毫米 (1 oz/ft² = 0.035 mm)
            const thickness_mm = thickness * 0.035;

            // 计算导线宽度(宽度 = 面积 / 厚度)
            const width_mm = area_mm2 / thickness_mm;

            // 毫米转密耳(1 mm = 39.37 mil)
            const width_mil = width_mm * 39.37;

            // 更新结果
            document.getElementById('width-mm').textContent = width_mm.toFixed(2);
            document.getElementById('width-mil').textContent = width_mil.toFixed(2);
            document.getElementById('area').textContent = area_mm2.toFixed(4);
            document.getElementById('density').textContent = currentDensity.toFixed(2);
        }

        // 初始计算
        calculateWidth();
    </script>
</body>
</html>

功能说明

这个PCB布线宽度计算器具有以下功能:

  1. 输入参数

    • 电流(安培)
    • 铜箔厚度(0.5 oz/ft², 1 oz/ft², 2 oz/ft², 3 oz/ft²)
    • 最大允许温升(摄氏度)
    • 布线层类型(外层/内层)
  2. 计算结果

    • 最小线宽(毫米和密耳两种单位)
    • 所需导线横截面积(mm²)
    • 电流密度(A/mm²)
  3. 技术说明

    • 基于IPC-2221标准公式:I = k ΔT^0.44 A^0.725
    • 外层导线常数 k = 0.048
    • 内层导线常数 k = 0.024
    • 考虑铜箔厚度换算(1 oz/ft² = 35μm)
  4. 设计特点

    • 响应式布局,适配各种屏幕尺寸
    • 现代化UI设计,渐变背景和卡片式布局
    • 实时计算结果
    • 包含计算公式说明和注意事项

使用此工具,PCB设计工程师可以快速确定满足电流承载能力要求的最小导线宽度,确保设计的可靠性和安全性。

揭秘PCB线宽度计算:原理、方法与实战技巧

一站式PCBA智造厂家今天为大家讲讲PCB设计中的走线宽度如何计算?PCB

2025-03-06 09:25:30

pcb板走线宽度的设计指南

pcb板走线宽度的设计指南

2024-02-23 17:30:13

高功率设计的PCB线宽度与电流的关系表

时,您可以使用PCB走线宽度与电流表来确定您需要在布局中使用的电源走线宽度。 另一种选择是使用基于IPC-2152或IPC-2221标准的

2023-12-06 08:05:09

PCB线宽电流计算工具下载

PCB线宽电流计算工具下载

资料下载 段志远 2022-02-25 13:52:08

原理图和PCB板设计仿真工具

KiCad PCB 计算器是⼀组实⽤程序,可帮助您查找布局的元件或其他参数的值。计算器具有以下⼯具: 2 稳压

资料下载 dinesh 2022-02-23 09:56:08

计算器labview实现的课程实验报告

计算器labview实现的课程实验报告

资料下载 pjdjy0 2022-01-13 14:07:04

PCB线宽度变化产生的反射影响的问题介绍资料下载

电子发烧友网为你提供PCB走线宽度变化产生的反射影响的问题介绍资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。

资料下载 佚名 2021-04-23 08:54:09

PCB线路电阻计算器v1.1.2软件免费下载

本文档的主要内容详细介绍的是PCB线路电阻计算器v1.1.2软件免费下载。

资料下载 佚名 2020-05-06 17:16:22

PCB设计要点之DC-DC转换

走线宽度计算 使用计算出的电流、走线电阻和电压降值,使用在线走线宽度

2023-10-17 11:41:08

什么是PCB线宽度?如何计算PCB线宽度

走线宽度是PCB设计中最关键的因素之一。

2023-07-12 13:53:28

什么是PCB线宽度

当涉及到PCB 设计时,PCB 走线电流容量带来的限制是至关重要的。虽然IPC-2221通用设计指南是一个很好的起点,但 PCB 走

2022-08-22 09:05:44

PCB布线宽度与允许电流是什么关系?

PCB布线宽度与允许电流是什么关系?

2021-04-23 07:00:55

PCB线宽度会对信号产生什么影响

在进行PCB布线时,经常会发生这样的情况:走线通过某一区域时,由于该区域布线空间有限,不得不使用更细的线条,通过这一区域后,线条再恢复原来的

2020-01-01 17:35:00

为什么pcb设置布线宽度时没有gnd?

pcb设置布线宽度时没有gnd有acc

2019-09-06 05:35:14

为什么pcb设置布线宽度时没有gnd有acc?

pcb设置布线宽度时没有gnd有acc

2019-09-05 01:12:48
7天热门专题 换一换
相关标签