Skip to content

snippet0809/MEIN_calculator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

MEIN 校验位计算器

用于计算机械环保代码(Mechanical Environmental Identification Number,简称 MEIN)第 9 位校验位的轻量 Web 工具。填写企业标识、机械类别、燃料类型等字段后,按国标加权算法自动算出完整 17 位 MEIN,并支持一键复制与计算过程对照表。

功能特性

  • 表单录入 MEIN 各段信息(企业标识、机械类别、燃料类型、器械说明、制造年份、排放阶段、自定义码)
  • 按标准规则将字母映射为数值,加权求和后取模 11 得到校验位(余数为 10 时校验位为 X
  • 输出完整 17 位 MEIN 及校验位字符
  • 可展开/隐藏逐步计算对照表(每位字符、对应值、加权系数与乘积)
  • 一键复制完整 MEIN 到剪贴板
  • 制造年份下拉框默认选中当前年份;页面加载即用,无需安装依赖

MEIN 结构说明

完整 MEIN 共 17 位,其中第 9 位为校验位(由本工具计算),其余 16 位由用户输入或选择:

位置 字段 说明
1–3 企业标识 企业代码后三位(字母或数字)
4 机械类别 1 工程机械、2 农业机械、3 矿山机械、4 林业机械、5 渔业机械、6 发电机、7 其它
5 燃料类型 1 柴油、2 汽油、3 燃气、4 其它
6–8 器械说明 对应环保公开编号第 16–18 位
9 校验位 本工具计算
10 制造年份 2015 年起按字母/数字编码(如 F=2015、S=2025)
11 排放阶段 2 国二、3 国三、4 国四、5 国五、6 国六
12–17 自定义码 企业自定义六位

输入校验:企业标识、器械说明、自定义码须分别为 3、3、6 位;16 位待校验字符仅允许数字及 ABCDEFGHJKLMNPQRSTUVWXYZ(不含 I、O)。

校验位算法(简述)

  1. 将除校验位外的 16 位字符按规则转换为数值(字母与 VIN 类似有固定映射)。
  2. 与加权系数 [8,7,6,5,4,3,2,10,9,8,7,6,5,4,3,2] 逐位相乘并求和。
  3. 和对 11 取余;余数为 10 时校验位为 X,否则为余数本身(0–9)。
  4. 将校验位插入第 9 位,得到 17 位完整 MEIN。

使用方法

本地打开

本项目为纯静态页面,无构建步骤:

# 克隆仓库后,用浏览器直接打开
open index.html   # macOS
# 或在资源管理器中双击 index.html

也可使用任意静态服务器(可选):

# 若已安装 Python 3
python3 -m http.server 8080
# 浏览器访问 http://localhost:8080

操作步骤

  1. 填写/选择各字段,点击 提交
  2. 查看计算得到的校验位与完整 MEIN。
  3. 需要核对过程时,点击 查看对照表;确认无误后可用 复制 MEIN

输入格式不符合要求时会提示「数据格式有误,请仔细检查」。

项目结构

MEIN_calculator/
├── index.html    # 页面、样式与计算逻辑(单文件)
├── .gitignore
└── README.md

package.json、无后端、无第三方库,适合本地使用或部署到任意静态托管(如 GitHub Pages)。

技术说明

  • HTML / CSS / JavaScript:逻辑集中在 index.html 内联脚本中。
  • 剪贴板:使用 navigator.clipboard API;部分浏览器或非 HTTPS 环境可能无权限,会提示复制失败。
  • 对照表:第 9 位(校验位)在加权表中系数为 *,不参与加权和,仅展示结果。

许可证

未在仓库中声明许可证;使用前请自行确认相关环保编码标准的适用性与合规要求。

参考

计算规则依据机械环保编码相关国家标准及行业惯例实现。若标准更新,请以最新官方文件为准,并相应调整 index.html 中的映射与选项。

About

机械环保代码(MEIN)第9位校验位在线计算工具,纯静态 HTML,开箱即用

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages