วันพุธที่ 14 กรกฎาคม พ.ศ. 2553

การบันทึกโครมาโทแกรมลงแผ่นดิสก์ MO Memoir : Wednesday 14 July 2553

ขอให้นิสิตทุกคนเก็บ Memoir ฉบับนี้ไว้ให้ดี เพราะต้องใช้ประกอบการทำการทดลองทุกคน


เครื่องอินทิเกรเตอร์ (Integrator) C-R8A ที่ใช้ต่อกับเครื่อง GC Shimadzu นั้น นอกจากจะทำหน้าที่คำนวณพื้นที่และความสูงของพีค GC ที่ได้จากการวิเคราะห์ เรายังสามารถทำการบันทึกข้อมูลโครมาโทแกรมไว้ในแผ่นดิสก์ขนาด 3.5 นิ้ว โดยอาจบันทึกเป็นไฟล์ข้อมูลรูปแบบที่เฉพาะเครื่อง C-R8A อ่านได้เท่านั้น การบันทึกในรูปแบบนี้ถ้าต้องการนำข้อมูลมาวิเคราะห์ใหม่ก็ต้องใช้เครื่อง C-R8A อ่านข้อมูลในแผ่นดิสก์และทำการวิเคราะห์ข้อมูลใหม่

แต่เนื่องจากในขณะนี้เรามีโปรแกรม fityk ซึ่งสามารถทำงานได้ดีกว่าและหลากหลายมากกว่า ทำให้เราสามารถทำการแยกพีคที่ซ้อนกันออกมาได้ดีกว่าการใช้เครื่อง C-R8A วิเคราะห์ แต่ต้องมีการเปลี่ยนรูปแบบข้อมูลจากรูปแบบที่เฉพาะเครื่อง C-R8A อ่านได้เท่านั้น มาเป็นข้อมูลในรูปแบบตัวเลขฐาน 10 โดยต้องทำการแปลงข้อมูลการวิเคราะห์ให้กลายเป็นไฟล์ข้อมูลเลขฐาน 10 และคัดลอกข้อมูลดังกล่าวลงแผ่นดิสก์

การบันทึกข้อมูลลงแผ่นดิสก์ทุกครั้งที่วิเคราะห์มีข้อดีตรงที่ ถ้าเรามีปัญหาหรือสงสัยผลการคำนวณของเครื่อง C-R8A (ซึ่งเจออยู่บ่อยครั้ง) เราก็สามารถนำข้อมูลเดิมนั้นมาวิเคราะห์ใหม่ได้โดยที่ไม่ต้องทำการทดลองใหม่ และเรายังสามารถนำข้อมูลนั้นมาขยายเพื่อมองหาองค์ประกอบที่มีอยู่ในปริมาณน้อยในสารตัวอย่าง (ซึ่งเครื่อง C-R8A จะไม่แสดงผลนั้นออกมา)

ดังนั้นทุกครั้งที่ทำการวิเคราะห์ตัวอย่างด้วยเครื่อง GC จึงควรบันทึกข้อมูลการวิเคราะห์ที่ใช้งานจริงลงแผ่นดิสก์เอาไว้ทุกครั้ง เพราะถ้ามีปัญหาเมื่อใดจะได้กลับมาทำการวิเคราะห์ใหม่ได้ ไม่ต้องไปทำการทดลองใหม่

กรณีเช่นนี้เคยเกิดขึ้นเมื่อพบว่าในการทดลองกับตัวเร่งปฏิกิริยาบางตัว เครื่อง C-R8A รายงานว่ามีผลิตภัณฑ์ข้างเคียงบางชนิดเกิดขึ้น ในขณะที่กับตัวเร่งปฏิกิริยาตัวอื่นกลับไม่รายงานผล แต่เมื่อนำโครมาโทแกรมมาตรวจสอบใหม่พบว่าตัวเร่งปฏิกิริยาทุกตัวที่ศึกษานั้นทำให้เกิดผลิตภัณฑ์ชนิดนั้นเกิดขึ้น แต่เกิดขึ้นในปริมาณต่างกัน บางตัวเร่งปฏิกิริยาทำให้เกิดผลิตภัณฑ์ข้างเคียงนั้นน้อย ซึ่งถ้าพื้นที่พีคของผลิตภัณฑ์ข้างเคียงนั้นน้อยกว่าค่าที่กำหนดไว้ให้กับเครื่อง C-R8A เครื่อง C-R8A ก็จะไม่พิมพ์พื้นที่พีคนั้นออกมา (หมายเหตุ : เรามักจะต้องตั้งพื้นที่พีคที่เล็กที่สุดที่ให้เครื่อง C-R8A พิมพ์ออกมา เช่นเราอาจตั้งให้เครื่องพิมพ์เฉพาะพีคที่มีพื้นที่มากกว่า 100 พีคใดก็ตามที่มีพื้นที่มากกว่า 100 เครื่อง C-R8A ก็จะพิมพ์พื้นที่พีคนั้นออกมา แต่พีคใดก็ตามที่มีพื้นที่น้อยกว่า 100 จะไม่ถูกรายงานออกมา การที่ต้องตั้งค่าดังกล่าวก็เพื่อไม่ให้เครื่องรายงานสิ่งที่ไม่ใช่พีค เช่น สัญญาณรบกวนต่าง ๆ หรือพีคที่มีขนาดเล็กมาก)

Memoir ฉบับนี้เขียนขึ้นเพื่อเป็นบันทึกวิธีการบันทึกไฟล์โครมาโทแกรมจากเครื่องอินทิเกรเตอร์ C-R8A ลงแผ่นดิสก์ โดยจะทำการแปลงไฟล์ให้อยู่ในรูปเลขฐาน 10 ที่สามารถนำไปเข้ากระบวนการอื่นได้ (เช่นแปลงเป็นไฟล์นามสกุล .csv เพื่อใช้กับโปรแกรม fityk หรือส่งเข้าโปรแกรม Excel หรือ Open Office)


ที่มาของวิธีการนี้ได้มาจากคู่มือของเครื่องทั้ง 4 เล่ม (มาในรูปแบบไฟล์ .pdf) คือ

C-R8A Basic guide

C-R8A Basic command

C-R8A Operation manual และ

C-R8A Advanced operation manual


1. การนำข้อมูลที่อยู่ในหน่วยความจำ C-R8A บันทึกลงแผ่นดิสก์ในรูปแบบไฟล์เลขฐาน 10

หลังจากเครื่องอินทิเกรเตอร์พิมพ์กราฟและรายงานผลครบตามเวลาที่ตั้งแล้ว เครื่องจะรายงานชื่อไฟล์ข้อมูลที่ทำการเก็บบันทึกข้อมูลโครมาโทแกรมไว้ (ดูรูปที่ 1 ข้างล่าง) ให้ทำการใส่แผ่นดิสก์ (ขนาด 3.5 นิ้วที่ผ่านการฟอร์แมตแล้ว) เข้าไปในช่องใส่แผ่นดิสก์ของเครื่อง C-R8A และดำเนินการตามขั้นตอนต่อไปนี้


รูปที่ 1 หน้าจอ C-R8A แจ้งว่าเก็บข้อมูลโครมาโทแกรมไว้ในไฟล์ชื่อ @CHRM1.C00 ส่วน 1: ที่อยู่หน้าไฟล์บอกว่าเก็บอยู่ที่หน่วยความจำของเครื่อง


ขั้นตอนที่ 1 ทำสำเนาไฟล์จากไฟล์ที่เครื่องบันทึกไว้อัตโนมัติระหว่างการวิเคราะห์ (@CHRM1.C00) ไปเป็นชื่ออื่น (เช่นเป็น @CHRM1.C32 ในที่นี้ แต่คุณก็สามารถใช้ชื่ออื่นได้ แต่ต้องนำหน้าชื่อด้วย @ เพื่อที่ C-R8A จะได้นำไฟล์ดังกล่าวไปประมวลต่อได้) โดยใช้คำสั่ง


DCOPY "1:@CHRM1.C00" TO "1:@CHRM1.C32" enter


คำสั่ง DCOPY เป็นคำสั่งทำสำเนาไฟล์เดิมที่เครื่องบันทึกไว้ในระหว่างการวิเคราะห์ไปเป็นไฟล์ใหม่ เพราะเราต้องทำการเปลี่ยนรูปแบบข้อมูลของไฟล์ ถ้าไม่ทำสำเนาไว้ แล้วเกิดความผิดพลาดระหว่างการเปลี่ยนรูปแบบไฟล์ จะทำให้สูญเสียข้อมูลไปทั้งหมด ดังนั้นจึงควรทำสำเนาไฟล์ข้อมูลเอาไว้ก่อน แล้วทำการเปลี่ยนรูปแบบข้อมูลไฟล์จากไฟล์ที่ทำสำเนาเอาไว้

ปรกติเครื่องจะตั้งชื่อไฟล์เป็น @CHRM1.Cxx เริ่ม xx จะเริ่มจาก 00 ไปเป็น 01 02 ... ไปเรื่อย ๆ แต่เพื่อความปลอดภัยควรตรวจสอบด้วยว่าไฟล์ที่ได้จากการวิเคราะห์แต่ละครั้งนั้นอยู่ที่ไฟล์ @CHRM1.C00 เสมอ


ขั้นตอนที่ 2 เริ่มกระบวนการบันทึกข้อมูล โดยใช้ชุดคำสั่ง 2.1-2.4 ตามลำดับต่อไปนี้ ( หมายถึงเว้นวรรค 1 วรรค ; enter หมายถึงให้กดปุ่ม Enter)


2.1 OPEN "1:@CHRM1.C32" INPUT AS # 6 enter

2.2 OPEN "1:@CHRM1.J32" OUTPUT AS # 3 enter

2.3 CONV RD "1:@CHRM1.C32" TO 3 enter

2.4 CLOSE # 3 enter

2.5 DCOPY "1:@CHRM1.J32" TO "2:" enter


หมายเหตุ

(ก) ถ้าพิมพ์ข้อมูลผิดในระหว่างข้อ 2.1-2.3 แล้วขึ้นerror ให้พิมพ์ใหม่แต่เริ่ม

(ข) ถ้าพิมพ์ข้อมูลข้อ 2.5 ผิด พิมพ์เฉพาะข้อ 2.5 เท่านั้น

(ค) ในข้อ 2.1 คำสั่ง OPEN เป็นคำสั่งเปิดไฟล์ @CHRM1.C32 ที่อยู่ในหน่วยความจำของอินทิเกรเตอร์ โดยบอกว่าเป็นไฟล์ที่มีข้อมูลขาเข้า (จากคำสั่ง INPUT AS # 6 คือ เป็นการเปิดเพื่ออ่าน)

(ง) ในข้อ 2.2 เป็นการสร้างไฟล์ใหม่ชื่อ @CHRM1.J32 ว่าจะเป็นไฟล์ที่รองรับข้อมูลที่จะทำการเขียน (จากคำสั่ง OUTPUT AS # 3 คือ เป็นการเปิดเพื่อเขียน)

(จ) ในข้อ 2.3 เป็นการเปลี่ยนรูปแบบข้อมูลโดยใช้คำสั่ง CONV RD เปลี่ยนข้อมูลจากรูปแบบที่เฉพาะเครื่องอินทิเกรเตอร์ C-R8A อ่านได้เท่านั้น ไปเป็นรูปแบบเลขฐาน 10 และให้บันทึกข้อมูลที่เปลี่ยนรูปแบบแล้วไปที่ไฟล์ @CHRM1.J32

(ฉ) ข้อ 2.4 เป็นคำสั่งปิดไฟล์ @CHRM1.J32 คำสั่งนี้เป็นคำสั่งที่มีเพิ่มเติมจากคู่มือของรุ่นก่อนหน้า (ใครที่ถือคู่มือการทำงานของรุ่นพี่จะไม่มีคำสั่งนี้)

(ช) ข้อ 2.5 เป็นการคัดลอกไฟล์ @CHRM1.J32 ที่อยู่ในหน่วยความจำของเครื่อง C-R8A ลงในแผ่นดิสก์ ถ้าหลังจากกด enter แล้วพบว่าเครื่องไม่สามารถคัดลอกไฟล์ได้ ให้ทดลองพิมพ์คำสั่ง 2.4 ซ้ำใหม่อีกครั้ง


2. การแปลงไฟล์ที่ได้จาก C-R8A ให้อยู่ในรูปแบบที่โปรแกรม spreadsheet อ่านได้

ไฟล์ @CHRM1.J32 ที่ได้มาจากขั้นตอนก่อนหน้านั้นมีลักษณะเป็นข้อความตัวเลขเรียงเป็นแถวยาว คั่นด้วยเครื่องหมายจุลภาค (,) ดังนี้


R24,25,1012,xxx,xxx,xxx,xxx,...


ข้อมูลที่ได้มานั้นจะมีเฉพาะข้อมูลความสูงเท่านั้น ไม่ได้ให้ข้อมูลของเวลามาด้วย

R24 เป็นตัวบอกให้ทราบว่าเป็นจุดเริ่มต้นข้อมูล (ตรงนี้เราไม่ใช้)

25 เป็นตัวเลข sampling rate (ขึ้นอยู่กับการตั้ง width ของเรา) หน่วยเป็นจำนวนเท่าของ 0.02 วินาที เราใช้ตัวเลขนี้ในการคำนวณว่า

1012 คือจำนวนจุดข้อมูลทั้งหมดที่มี ตัวเลขนี้ขึ้นอยู่กับความถี่ในการเก็บข้อมูลและระยะเวลาทำการวิเคราะห์ ถ้าใช้ความถี่สูงในการเก็บข้อมูลและวิเคราะห์ต่อเนื่องยาวนาน ตัวเลขนี้ก็จะเพิ่มขึ้น ในตัวอย่างนี้เลข 1012 บอกว่ามีจุดข้อมูลทั้งหมด (ตัวเลข xxx ที่อยู่ตามหลังเลขนี้) 1012 จุด

xxx คือข้อมูลสัญญาณ


ไฟล์ @CHRM1.J32 ที่ได้มานั้นมีลักษณะเป็น text file ที่ประกอบด้วยข้อมูลตัวเลข คั่นระหว่างตัวเลขด้วยจุลภาค (,) ในการทำข้อมูลให้อยู่ในรูปแบบที่โปรแกรม spreadsheet อ่านได้นั้น เราอาจทำได้โดย


วิธีที่ 1 ในกรณีที่จำนวนจุดข้อมูลมีไม่มาก ให้ทำการเปลี่ยนนามสกุลไฟล์เป็น .csv ก่อน (ย่อมาจาก comma separated value) เช่นเปลี่ยนจาก @CHRM1.J32 เป็น @CHRM1.csv จากนั้นจึงใช้โปรแกรม spreadsheet เช่น Excel เปิดไฟล์นี้

ข้อมูลที่ส่งเข้ามานั้นจะมีเพียงแถว (row) เดียว (เรียงตามแนวนอนของหน้า work sheet) ถ้าหากจำนวนข้อมูลมีการเกินไป โปรแกรมจะตัดข้อมูลส่วนที่เหลือทิ้งไป

จากนั้นจึงใช้คำสั่ง transpose เพื่อเปลี่ยนรูปแบบข้อมูลจากแถวเดี่ยว ให้กลายเป็นหลัก (column) เดี่ยว


วิธีที่ 2 วิธีนี้ใช้ได้กับจำนวนจุดข้อมูลทุกขนาด โดยให้ทำการเปลี่ยนนามสกุลไฟล์ให้เป็น .txt ก่อน โดยอาจเปลี่ยนชื่อไฟล์จาก @CHRM1.J32 เป็น @CHRM1.txt

จากนั้นให้ใช้โปรแกรม Word เปิดไฟล์ @CHRM1.txt และใช้คำสั่ง replace ทำการเปลี่ยนเครื่องหมายจุลภาค (,) ด้วยการขึ้นบรรทัดใหม่ (^l) จะทำให้ได้ไฟล์ที่มีข้อมูลบรรทัดละข้อมูล ทำการบันทึกไฟล์นี้ไว้

จากนั้นใช้โปรแกรม spreadsheet (เช่น Excel) เปิดไฟล์ @CHRM1.txt ที่ผ่านการแปลงแล้ว จะได้ข้อมูลที่เรียงกันเพียงหลักเดียวดังนี้


R24

25

1012

xxx

xxx

xxx

...


3. การใส่สเกลเวลาให้กับข้อมูล

สมมุติว่าเรามีชุดข้อมูลดังนี้


R24,25,1012,32,33,31,xxx,...


32 คือข้อมูลตัวแรกของสัญญาณโครมาโทแกรม ข้อมูลที่ตำแหน่งนี้ให้เป็นเวลาศูนย์ (0)

ข้อมูลตัวถัดไป (33) จะอยู่ห่างจากตัวแรกเป็นระยะเวลา (25 x 0.02) วินาที หรือ 0.5 วินาที (ตัวเลข 25 คือตัวเลข sampling rate ที่อยู่ถัดจาก R24 ส่วน 0.02 เป็นสัญญาณการ sampling มีหน่วยเป็นวินาที ตัวเลขเวลานี้เป็นค่าคงที่ ระยะห่างระหว่างการ sampling แต่ละครั้งจะเท่ากับผลคูณของตัวเลข sampling กับสัญญาณการ samplig นี้)

ดังนั้นในที่นี้ข้อมูล 33 จะอยู่ที่เวลา 0.5 วินาที และข้อมูล 31 ก็จะอยู่ที่เวลา 1 วินาที

ถ้าต้องการหน่วยเวลาเป็นนาที ก็ให้เอา 60 หารเข้าไปด้วย (ซึ่งควรทำ เพราะจะทำให้สามารถเทียบกับโครมาโทแกรมที่เครื่อง C-R8A พิมพ์ออกมาด้วยได้)

ถ้าต้องการนำข้อมูลไปใช้กับโปรแกรม fityk ก็ให้ลบข้อมูล 3 ตัวแรก (R24,25,1012) ทิ้งไปก่อน แล้วบันทึกไฟล์เป็นนามสกุล .csv


R24 ลบข้อมูลตัวนี้ทิ้งถ้าต้องการนำไปใช้กับโปรแกรม fityk

25 ลบข้อมูลตัวนี้ทิ้งถ้าต้องการนำไปใช้กับโปรแกรม fityk

1012 ลบข้อมูลตัวนี้ทิ้งถ้าต้องการนำไปใช้กับโปรแกรม fityk

0.00 32

0.50 33

1.00 31

1.50 xxx


เมื่อถึงขั้นตอนนี้แล้วเราควรจะได้ไฟล์นามสกุล .csv เพื่อไปใช้กับโปรแกรม fityk หรือตระกูล spreadsheet เพื่อนำไปทำกราฟต่าง ๆ ต่อไป

ไม่มีความคิดเห็น: