Nitrogen gas blanketing [EP.2]: การออกแบบ Design Volume ของ Nitrogen

จาก EP1 ที่นายช่างได้ปูพื้นฐานของ“ระบบการปกคลุมด้วยแก๊สไนโตรเจน (Nitrogen/inert gas blanketing)” ในโรงงานอุตสาหกรรมในวันนี้จึงมาต่อยอดในเรื่องการออกแบบของระบบนี้ ซึ่งนายช่างเองเคยได้ออกแบบมาแล้ว และ พบว่าไม่มีเว็บไซต์ไหนอธิบายขั้นตอนการออกแบบระบบนี้เลย เพื่อเป็นประโยชน์กับทุกคนเพื่อให้คนที่อยากเข้าใจว่าการกำหนด Flow N2 และ Setting pressure มาได้อย่างไร ผมจึงขอแชร์ความรู้สำหรับการออกแบบระบบปกคลุมแก๊สไนโตรเจนตาม standard ของ API2000 edition ที่ 7 ซึ่งเป็นฉบับที่ใช้กันในปัจจุบัน ซึ่งเป็น Engineering standard สำหรับ Design nitrogen blanket capacity

กลับไปอ่านบทความที่เกี่ยวข้อง

ระบบการปกคลุมด้วยแก๊สไนโตรเจน (Nitrogen/Inert Gas Blanketing) [EP:01]

การพิจารณาขั้นพื้นฐาน (Basic consideration)

ขนาดของ regulator จะถูกอกกแบบให้มี Size สอดคล้องกับการเปลี่ยนแปลงความดันภายในถัง ซึ่งความดันที่เปลี่ยนแปลงภายในถังจะเกิดจาก

  1. การปั๊มของเหลวเข้าและออก
  2. การเปลี่ยนแปลงของอุณหภูมิ

นอกจากนี้ถังสารเคมีจะแบ่งออกเป็น 2 ระบบ คือ non-refrigerated tank (ถังบรรจุของเหลวที่มีอุณหภูมิสูงกว่าบรรายากาศภายนอก) และ Refrigerated tank (ถังบรรจุของเหลวที่มีอุณหภูมิต่ำกว่าบรรายากาศภายนอก) แต่ไม่ว่าจะเป็นถังประเภทไหนก็จะมี Concept การออกแบบเหมือนกัน แต่จะแตกต่างกันที่สูตรการคำนวณ (ใน API2000 มีบอกอยู่แล้ว)

สำหรับการคำนวณอัตราการไหลของแก๊สไนโตรเจนที่ต้องใช้ ถ้าเป็นหน่วย SI จะใช้หน่วย Nm3/h (อ่านว่า Normal cubic meter per hour) เป็นสภาวะมาตรฐานที่อ้างอิงจากสถานะของแก๊สที่ความดัน 1.01325 barg และอุณหภูมิ 0 oC  แต่ถ้าใช้หน่วยอังกฤษจะใช้อัตราการไหลในหน่วย SCFH (อ่านว่า Standard cubic foot per hour) อ้างอิงจากสถานะของแก๊สที่ความดัน 1.01325 barg และอุณหภูมิ 15 oC  แต่ผมถนัดหน่วย SI ครับ

ขั้นตอนการออกแบบNitrogen Regulator

  1. คำนวณ Outbreathing rate ของ Liquid transfer effect (pump-in) แบ่งออกเป็น 2 กรณีคือ

1.1 Non-volatile liquid คือของเหลวในถังที่มีความดันไอ (Vapor pressure) ไม่เกิน 5 kPa

Outbreathing rate (VOP)  ที่เกิดจาก Pump-in จะคำนวณได้จาก อัตราการไหลสูงสุดของปั๊มที่    Pump-in ดังสมการ (1)

1.2 Volatile liquid คือของเหลวในถังที่มีความดันไอ (Vapor pressure) เกิน 5 kPa

Outbreathing rate (VOP)  ที่เกิดจาก Pump-in จะคำนวณได้จาก 2 เท่าของอัตราการไหลสูงสุดของปั๊มที่    Pump-in ดังสมการ (3)

2.คำนวณ Inbreathing rate ของ Liquid transfer effect (pump-out)

Inbreathing rate (VIP)  ที่เกิดจาก Pump-out จะคำนวณได้จาก อัตราการไหลสูงสุดของปั๊มที่    Pump-out ดังสมการ (5)


3. คำนวณ Outbreathing rate ของ Thermal effect (อุณหภูมิภายนอกร้อน Vapor ในถังขยายตัว)

จาก EP1 เรื่อง Thermal effect จะมากหรือน้อยจะขึ้นกับ Location , ความหนาของฉนวนที่หุ้มถัง รวมไปถึงขนาดของ Tank Thermal outbreathing rate สามารถคำนวณจากสมการที่ (7)

ในสูตรจะมี Y-factor ที่ขึ้นอยู่กับ Location ว่าตั้งอยู่ที่เส้นละติจูดกี่องศา (เปิด GPS ดูเอา อิอิ) โดยประเทศไทยสูงสุดก็ยังใงก็ต่ำกว่า 42 o latitude

ในส่วนของปริมาตรถังเราจะคิดที่ 100% ส่วนเรื่องฉนวนที่สามารถกันความร้อน (Ri)  ถ้าไม่มีฉนวน Ri =1 แต่ถ้ามีฉนวนจะคำนวณจากสมการที่ 11

4. คำนวณ Inbreathing rate ของ Thermal effect (อุณหภูมิภายนอกเย็น Vapor ในถังหดตัว)

Thermal inbreathing rate สามารถคำนวณจากสมการที่ (9)

ค่า Ri ใช้ค่าเดิมที่เราคำนวณจากข้างบน ส่วน C-Factor จะเปิดดูจาก Table 2

สำหรับการคำนวณโดยทั่วไปจะคำนวณดังนี้

N2 feed flow rate (Nm3/h) = Total Inbreathing rate (Nm3/h)  – Total Outbreathing rate (Nm3/h) (คิดทั้งหมด จะใช้ N2 gas ไม่มากเมื่อเทียบกับอีก case)

จากสมการเมื่อหักลบกันแล้วจะเป็นflow ที่อากาศจากภายนอกจะถูกดูดเข้ามาในถัง ดังนั้น เพื่อป้องกันอากาศเข้า  อัตราการไหลที่คำนวณได้จะต้องเป็น Minimum nitrogen flow rate 

แต่ถ้าเป็นถังประเภท Refrigerated tank (ถังบรรจุของเหลวที่มีอุณหภูมิต่ำกว่าบรรายากาศภายนอก) หรือสารเคมีที่ต้องการความชัวร์ (เปลืองแก๊สไนโตรเจน แต่มั่นใจเรื่องการป้องกันอากาศเข้าถัง)  สามารถคำนวณจาก

N2 feed flow rate (Nm3/h) = Total Inbreathing rate (Nm3/h)  

เมื่อได้ Capacity ของ Regulator แล้ว ก็ต้องมาเลือก Set Pressure ที่เหมาะสมตามชนิดของ Regulator

 โดยใน API2000 มี guideline คร่าวๆดังนี้

ตัวอย่างเช่น ถ้าที่โณงงานเลือกใช้ Valve แบบ Pilot operated valve เราจะต้อง Set pressure +/- 5 mbarg ขึ้นไป

โดยจะ Set เท่าไร ต้องไป Match กับ N2 flow rate (อันนี้จะเป็นหน้าที่ของ Supplier ที่ขาย valve) เช่น เราคำนวณ Flow ได้ 400 Nm3/h vendor ก็จะเอา Catalog ที่Flow อยู่ในช่วงที่เราคำนวณแต่ Set pressure ให้อยู่ในเกณฑ์ นอกจากนี้ต้องไม่เกิน Design pressure ที่ tank จะรับไหวด้วย

แล้วพบกับสาระความรู้ทางด้านงานช่าง และงานวิศวกรรมได้ในโพสถัดๆไปนะครับ

Website: www.naichangmashare.com
Facebook: https://www.facebook.com/naichangmashare/
Youtube: https://www.youtube.com/channel/UCmIPiSeg-uy4k8JYSmknp_g
Instragram: https://www.instagram.com/naichangmashare/
Twitter: https://twitter.com/naichangmashare

#นายช่างมาแชร์

Related

ทิ้งคำตอบไว้

กรุณาใส่ความคิดเห็นของคุณ!
กรุณาใส่ชื่อของคุณที่นี่

292ผู้ติดตามติดตาม
1,580ผู้ติดตามติดตาม
356ผู้ติดตามติดตาม
.newsletter-container { text-align: center; background-color: #FBFCFC; border-radius: 10px; padding: 32px 24px 28px 24px; max-width: 350px; margin: 0 auto; box-shadow: 0 2px 8px rgba(0,0,0,0.07); } .newsletter-container h3 { margin-top: 0; margin-bottom: 10px; font-size: 1.4em; letter-spacing: 1px; } .newsletter-container p { margin-top: 0; margin-bottom: 18px; color: #333; font-size: 1em; } #sub_email { width: 90%; max-width: 230px; padding: 10px 12px; border-radius: 5px; border: 1px solid #ccc; margin-bottom: 18px; font-size: 1em; box-sizing: border-box; } #sub_button { background-color: #2e86c1; border-radius: 5px; color: white; padding: 12px 0; text-align: center; font-weight: 700; font-size: 1.05em; cursor: pointer; transition: background 0.2s; display: block; width: 100%; margin: 0 auto; box-shadow: 0 1px 4px rgba(171,0,0,0.08); } #sub_button:hover { background-color: #1abc9c; } #container_link { display: block; margin-top: 4px; text-decoration: none; } jQuery('#container_link').click(function(e) { e.preventDefault(); let email = jQuery('#sub_email').val(); if (email === '') { alert('Please enter a valid email address.'); return; } let data = { action: 'subscribe', email: email }; jQuery.ajax({ type: 'POST', url: 'https://n8n.naichangmashare.com/webhook/ncms-news-letter-subscribtion', // Replace with your endpoint data: data, success: function(response) { if (response.success) { alert('Thank you for subscribing!'); } else { alert('Thank you for subscribing!'); //alert('Subscription failed. Please try again.'); } }, error: function() { alert('Thank you for subscribing!'); //alert('An error occurred. Please try again.'); } }); });

Thanks Sponsor


.global-loader-wrapper { position: relative; min-height: 150px; } .loader { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border: 4px solid #f3f3f3; border-top: 4px solid #3498db; border-radius: 50%; width: 30px; height: 30px; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } document.addEventListener('DOMContentLoaded', function() { const container = document.getElementById('post-banner-container'); // สร้าง global loader ขณะรอ fetch const globalLoaderWrapper = document.createElement('div'); globalLoaderWrapper.className = 'global-loader-wrapper'; const globalLoader = document.createElement('div'); globalLoader.className = 'loader'; globalLoaderWrapper.appendChild(globalLoader); container.appendChild(globalLoaderWrapper); fetch('https://naichangmashare.com/wp-content/ncms_banner/get_banner.php?position=postBanner') .then(response => response.json()) .then(data => { // ลบ global loader container.innerHTML = ''; // กรองเอาเฉพาะโฆษณาที่มีข้อมูลสมบูรณ์ const validAds = data.filter(ad => ad.Ads_BannerHyperLink && ad.Ads_BannerImageUrl); if (validAds.length === 0) return; // --- ส่วนการคำนวณการหมุนวนตามเวลา --- // สลับตำแหน่งตามช่วงเวลา (ตัวอย่าง: เปลี่ยนลำดับทุกๆ 10 นาที) const timeInterval = 10 * 60 * 1000; // 10 นาที (ปรับได้ตามต้องการ) const shiftOffset = Math.floor(Date.now() / timeInterval) % validAds.length; // หมุนวนอาร์เรย์ตาม shiftOffset const rotatedAds = validAds.slice(shiftOffset).concat(validAds.slice(0, shiftOffset)); // --- ตัดเอาแค่ 15 อันแรกมาแสดง (Mask 15) --- const displayAds = rotatedAds.slice(0, 25); // แสดงผลแบนเนอร์ displayAds.forEach(ad => { const img = new Image(); img.style.width = '100%'; img.alt = 'Advertisement Banner'; const link = document.createElement('a'); link.href = ad.Ads_BannerHyperLink; link.target = '_blank'; img.onload = () => { link.appendChild(img); container.appendChild(link); }; img.onerror = () => { const errorDiv = document.createElement('div'); errorDiv.style.color = 'red'; errorDiv.textContent = 'โหลดภาพไม่สำเร็จ'; link.appendChild(errorDiv); container.appendChild(link); }; img.src = ad.Ads_BannerImageUrl; }); }) .catch(error => { console.error('Error loading ads:', error); container.innerHTML = '

โหลดไม่สำเร็จ

'; }); });

Latest Articles