Đơn vị và chuyển đổi đơn vị tự động

Chuyển đổi đơn vị cho phép bạn liên kết một đơn vị vật lý với một Vali. Với mỗi phép tính sử dụng Vali này, việc chuyển đổi cần thiết sẽ được tự động thực hiện ở phía back end. Thư viện Pint library được dùng làm nền tảng cho chức năng này.

Ví dụ bên dưới cho thấy cách 50 kg được tự động chuyển đổi thành 110.23 pound (lbs) vì trường Formula and unit chứa 50kg nhưng Display unitlbs.

 

Các tiền tố và hậu tố cũng được áp dụng tự động, như được minh họa khi chuyển đổi Display unit của Mass Vali từ kg sang g trong ví dụ bên dưới.

 

Lưu ý rằng các đơn vị phải khớp nhau, và mọi sự không khớp sẽ được Requirements Portal biểu thị bằng một dấu chấm than trên tên Vali.

Ngoài ra, bạn có thể chỉ định một công thức $vali3 = $vali1 + $vali2 bằng cách sử dụng $vali1 = 10 meter và vali2 = 100 cm. Nếu bạn đặt Display unit của vali3 thành yd (yard), bạn sẽ có kết quả này được tự động tính toán và chuyển đổi: 12.030 yd. Nếu bạn không chỉ định Display unit cho vali3, sẽ có một đơn vị được tự động tính ra (trong trường hợp này, đó sẽ là mét hoặc xen-ti-mét).

Đơn vị của mỗi Vali là giống nhau đối với tất cả người dùng đang xem vali đó.

  • Tất cả các đơn vị và hằng số được hỗ trợ đều được liệt kê trong Pint Library.

  • Thư viện Pint tự động xử lý các dạng số nhiều được tạo bằng cách thêm 's' vào dạng số ít, vì vậy, ví dụ, lblbs là các đơn vị tương đương.

Xử lý Đơn vị trên Vali và Công thức

Tạo một Vali

Khi tạo một Vali mới (giá trị số hoặc công thức), có hai trường thuộc tính quan trọng:

  • Formula and unit (bắt buộc)

    • Đối với các giá trị số (ví dụ: 50 kg), trường này phải chứa giá trị và đơn vị.

    • Đối với công thức (ví dụ: $wheel1.mass+$wheel2.mass), đơn vị sẽ là kết quả từ phép tính.

  • Display unit (tùy chọn – nếu để trống, đơn vị hiển thị sẽ dựa trên các đơn vị từ trường Formula and unit).

Bảng dưới đây cho thấy phần tóm tắt về hành vi mong đợi khi tạo Vali, tùy thuộc vào các tùy chọn tạo khác nhau.

Trường Công thức và Đơn vị Trường Đơn vị Hiển thị Hành vi Mong đợi
giá trị số và không có đơn vị không có đơn vị Một giá trị không thứ nguyên được tạo ra.
giá trị số và không có đơn vị đơn vị Cảnh báo sai khác thứ nguyên đơn vị trên Vali.
giá trị số và có đơn vị được chỉ định không có đơn vị Một giá trị với đơn vị được chỉ định sẽ được tạo ra và hiển thị theo đơn vị từ trường Formula and unit.
giá trị số và có đơn vị được chỉ định đơn vị Một giá trị với đơn vị được chỉ định sẽ được tạo ra và hiển thị theo đơn vị từ trường Display unit (các đơn vị must khớp nhau).
một công thức (không cần đơn vị) không có đơn vị Display unit sẽ được tự động tính từ công thức.
một công thức (không cần đơn vị) đơn vị Kết quả từ công thức sẽ được hiển thị trong Display unit (các đơn vị must khớp nhau).
một công thức và một đơn vị tùy chỉnh không có đơn vị
  • Nếu đơn vị được tính từ công thức có thể chuyển đổi hợp lệ sang đơn vị do người dùng chỉ định, Vali sẽ được hiển thị theo đơn vị đã chỉ định.

  • Nếu không thể chuyển đổi, một Vali trống (có giá trị 0) sẽ được tạo với đơn vị do người dùng chỉ định.

một công thức và một đơn vị tùy chỉnh đơn vị
  • Nếu đơn vị được tính từ công thức có thể chuyển đổi hợp lệ sang Display unit, Vali sẽ được hiển thị theo Display unit đã chỉ định.

  • Nếu không thể chuyển đổi, một Vali trống (có giá trị 0) sẽ được tạo với đơn vị do người dùng chỉ định.

Vali có một kiểu cố định Đơn vị sẽ được tự động lấy từ đơn vị của kiểu đó (có thể thay đổi sau đó miễn là vẫn trong cùng một thứ nguyên).

Thay đổi Đơn vị

Trường Đơn vị Hiển thị

Luôn có thể thay đổi trường Display unit miễn là đơn vị hiển thị khớp với một chuyển đổi hợp lệ từ đơn vị được dùng (hoặc được tính qua công thức) trong trường Formula and unit. Nếu có sai khác về thứ nguyên, Requirements Portal sẽ biểu thị điều này bằng dấu chấm than và một thông báo trên Vali.

Khi đơn vị hiển thị được thay đổi thành một đơn vị có thể chuyển đổi hợp lệ (ví dụ: s sang ms hoặc m/s sang km/s), Vali sẽ được tính lại và hiển thị theo đơn vị tương ứng sau khi chuyển đổi, ví dụ: 100 s = 100 000 ms.

Trường Công thức và Đơn vị

Nếu một Vali chỉ là giá trị số (không phải công thức), bạn có thể thay đổi đơn vị, ví dụ từ m sang s. Vali sẽ trở thành 100 s thay vì 100 m. Tuy nhiên, nếu sau khi thay đổi, đơn vị hiển thị không khớp về thứ nguyên, Requirements Portal sẽ báo sai khác thứ nguyên, và đơn vị hiển thị cần được điều chỉnh.

Công thức

Nếu một Vali có công thức, công thức sẽ quyết định đơn vị mong đợi tùy theo các biến được sử dụng. Bạn có thể chọn hiển thị giá trị theo bất kỳ đơn vị nào (bằng cách sử dụng trường Display unit) miễn là đó là một chuyển đổi hợp lệ từ đơn vị của công thức. Việc thay đổi đơn vị hiển thị từ m/s sang km/s sẽ hiển thị giá trị tương ứng. Có thể thay đổi đơn vị hiển thị từ m/s sang m, nhưng Requirements Portal sẽ báo có vấn đề về thứ nguyên đơn vị.

Giá trị Không thứ nguyên

Các giá trị không thứ nguyên có thể được dùng trong phép nhân và phép chia, nhưng không thể dùng trong phép cộng và phép trừ với các giá trị có đơn vị, vì các đơn vị sẽ không tương thích. Tất cả Vali có đơn vị nên được lưu dưới dạng giá trị có đơn vị (trong trường Formula and unit) và được dùng làm tham số trong công thức (nghĩa là không nên dùng các con số 'ma thuật').

Các đơn vị không được nhận diện ('đơn vị không xác định') cũng được xem là không thứ nguyên.

Đơn vị Không xác định

Có một cài đặt riêng cho phép sử dụng các đơn vị không xác định. Nếu được bật (cài đặt mặc định), có thể thêm các đơn vị không được hỗ trợ nhưng sẽ tạo ra cảnh báo. Nếu bị tắt, sẽ không thể gán cho Vali một đơn vị không xác định.

Thay đổi Đơn vị Valitype

Đơn vị của một Valitype chỉ có thể được thay đổi sang một đơn vị khác có cùng thứ nguyên với đơn vị ban đầu. Thay đổi này sẽ không ảnh hưởng đến bất kỳ Vali hiện có nào của kiểu đó, nhưng các Vali mới được tạo với Valitype này sẽ có đơn vị mới.

Yêu cầu và Trường hợp xấu nhất

Các yêu cầu (giá trị min/max) và các trường hợp xấu nhất luôn được hiển thị theo cùng đơn vị với đơn vị của Vali. Nếu đơn vị được thay đổi, các yêu cầu và trường hợp xấu nhất cũng sẽ được tính lại để tương ứng với đơn vị đã chọn.

Đơn vị và Hằng số Được hỗ trợ

Requirements Portal hỗ trợ tất cả các đơn vị và chuyển đổi mặc định được định nghĩa trong thư viện Pint, cũng như các hằng số mặc định.

Khi làm việc với các đơn vị trong Requirements Portal, hãy lưu ý những điều sau:

  • Đơn vị và tiền tố phân biệt chữ hoa chữ thường. Ví dụ, kilogram phải luôn là kg và không bao giờ là Kg hoặc KG. Vui lòng lưu ý đến Pint Library khi làm việc với đơn vị nếu bạn không chắc về cách viết hoa.

  • Hour được viết tắt là h hoặc hr. h không thể được dùng để biểu thị hằng số Planck, cần dùng planck_constant cho mục đích đó.

  • Euro và dollar được hỗ trợ như các đơn vị, và tỷ lệ chuyển đổi của chúng được cố định ở mức 1 EUR = 1.123 USD (có thể thay đổi tỷ lệ này trong Admin Panel để phù hợp với tình hình kinh tế hiện tại). Chúng lần lượt được viết tắt là EUR hoặc euro và USD và dollar .

  • dB không ánh xạ tới 'decibarn' như trong danh sách đơn vị mặc định mà được ánh xạ tới đơn vị không thứ nguyên riêng là 'decibel'. Các đơn vị logarit khác (ví dụ: dBW) được xem là đơn vị không xác định và vì vậy được xử lý giống như các đơn vị không thứ nguyên. Không có chuyển đổi tự động nào giữa thang đo tuyến tính và logarit (ví dụ: dBW sang W).

  • Đối với các đơn vị nhiệt độ, hãy dùng degC, degF, và degK (hoặc trong trường hợp này chỉ cần K).

    Hãy chú ý khi sử dụng chuyển đổi tự động cho các giá trị nhiệt độ. Nhiệt độ là các đơn vị 'không nhân tính' và có một số hành vi đặc thù, được giải thích chi tiết hơn trong Pint documentation.

Có thể sử dụng các tiền tố sau:

  • Tiền tố thập phân:

    yocto- = 1e-24 = y-
    zepto- = 1e-21 = z-
    atto- =  1e-18 = a-
    femto- = 1e-15 = f-
    pico- =  1e-12 = p-
    nano- =  1e-9  = n-
    micro- = 1e-6  = u- = µ-
    milli- = 1e-3  = m-
    centi- = 1e-2  = c-
    deci- =  1e-1  = d-
    deca- =  1e+1  = da- = deka
    hecto- = 1e2   = h-
    kilo- =  1e3   = k-
    mega- =  1e6   = M-
    giga- =  1e9   = G-
    tera- =  1e12  = T-
    peta- =  1e15  = P-
    exa- =   1e18  = E-
    zetta- = 1e21  = Z-
    yotta- = 1e24  = Y-
    
  • Tiền tố nhị phân:

    kibi- = 2^10 = Ki-
    mebi- = 2^20 = Mi-
    gibi- = 2^30 = Gi-
    tebi- = 2^40 = Ti-
    pebi- = 2^50 = Pi-
    exbi- = 2^60 = Ei-
    zebi- = 2^70 = Zi-
    yobi- = 2^80 = Yi-
    

Có thể sử dụng bất kỳ tổ hợp nào giữa tiền tố và đơn vị, ví dụ: ks = kiloseconds, vì cả tiền tố và đơn vị đều đã được định nghĩa (1 kilosecond = 1000 seconds).

Đơn vị không được hỗ trợ

Không hỗ trợ việc sử dụng toán tử làm đơn vị. Ví dụ: %, -, &, $, #, °. Các giá trị này sẽ được xem là không thứ nguyên. Ví dụ, đơn vị % sẽ không được xem là phần trăm (50% = 0.5) mà là giá trị thô (50).

Đơn vị tùy chỉnh

Quản trị viên có thể định nghĩa các đơn vị tùy chỉnh (những đơn vị không được định nghĩa trong thư viện Pint) trên trang Settings – Custom Units (truy cập bằng cách nhấp vào biểu tượng  ở góc dưới bên trái, chọn Settings từ menu xuất hiện, rồi chọn Custom Units từ danh sách ở khung bên trái). Để tạo một đơn vị tùy chỉnh mới, hãy nhấp vào nút  ở góc trên bên phải và định nghĩa đơn vị đó dựa trên các đơn vị hiện có trong thư viện Pint.

AI-LocalizedAI-localized
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Feature Availability

The features available to you depend on which Altium solution you have – Altium Develop, an edition of Altium Agile (Agile Teams or Agile Enterprise), or Altium Designer (on active term).

If you don’t see a discussed feature in your software, contact Altium Sales to find out more.

Nội dung