วันอังคารที่ 9 ตุลาคม พ.ศ. 2561

Voltage Follower หรือ Buffer ( Op-Amp)


Voltage Follower
วงจร Voltage Follower หรือ วงจรบัฟเฟอร์ ถือเป็นวงจรหนึ่งที่ใช้กันเยอะมาก เนื่องจากจ่ายสัญญาณโดยไม่การลดทอนแรงดัน เนื่องจากวงจรนี้มีค่า impedance สูง
ยกตัวอย่าง ถ้ามีแหล่งวงจร1 จ่ายสัญญาญ digital  5Volt (logic= “1” ) และ 0 Volt (logic = “0”) ให้กับกับวงจร2 แต่วงจร2มีโหลดสูงทำให้กินกระแสเยอะ ผลคือไฟจะลดลง จาก5โวลต์ เป็น 3.8โวล์ต ทำให้วงจรที่2 จะรับค่าเพี้ยนๆ ไมรู้ตัวเองรับ Logic อะไรกันแน่ ดังนั้นถ้าเราเอาวงจรบัฟเฟอร์ต่อระหว่างสองวงจรนี้จะช่วยให้ให้แรงดันคงที่
โดยวงจรนี้ต่อง่ายมาเพียงแค่เอา Vout ต่อเข้า V1 (-) และจ่ายสัญญาณ หรือ เข้า V2 (+) ตามรูป


เรามาดูสมการกัน ว่าทำไม ๆ ๆ
เริ่มต้นจาก สมการพื้นฐานของออปแอมป์ โดยมีอัตราขยาย (Gain) เท่ากับ 1
                                    Vout = A (V2 V1)
โดย Vout ต่ออยู่กับ V1 ดังนั้น Vout = V1
                                                                                           Vout = AV2 AVout
เมื่อแกสมการ Vout จะได้
Vout = (AV2) – (AVout)
Vou t – AVout  = AV2
Vout (1+A) = AV2
Vout = (AV2)/(1+A)

ดังนั้นเมื่อค่า Aมีค่ามากกว่าค่าของ1 เราจึงนิยามสมการใหม่เป็น
Vout = AV2/A

Vout = V2

____________________________________
กรณีไม่ใส่วงจร buffer และใส่วงจร buffer









วันจันทร์ที่ 1 ตุลาคม พ.ศ. 2561

OPERATIONAL AMPLIFIERS

OPERATIONAL AMPLIFIERS
ออปแอมป์ หรือ operational amplifier คือวงจรทีมีอัตราขยายสูงแบบเชิงเส้น
ออปแอมป์ในอุดคติในแบบ Analog จะมีค่า
1. อัตราขยายวงเปิดมีค่าประมาณ A= 100,000 
2. ความต้านทานอินพุตมีค่าเป็น Rin > 1 MΩ
3. ความต้านทานเอาท์พุตมีค่า Rout = 50-75 ohm


จากรูปออปแอมป์ จะมี
อินพุต = V1 และ V2
เอาต์พุต = Vout
เพาว์เวอร์ซับพาย = ไฟบวก และ ไฟลบ

โดยส่วนใหญ่ ออปแอมป์จะใช้ทำเป็นวงจรเปรียบเทียบสัญญาญ หมายความว่า หากมีไฟต่างศักย์ระหว่างขาV1 และ V2 ก็จะถูกแสดงค่าที่ Vout 

ตามสมการ
 Vout = A(V2-V1)
โดย
Vout = แรงดันขาออก
A = อัตราขยายแบบเปิด
V1 = inverting input
V2 = non-inverting input

เรามขยายความตัวแปรแต่ละตัวกันว่ามันคืออะไรเริ่มจาก
Open loop gain (A) หรืออัตราขยายแบบไม่มีการปรับแต่งใดๆทั้งสิ้น จะอยู่ประมาณ 100,000 หรือ มากกว่านั้น

Non-inverting input (V2) 
       ก็คงเรื่องตามชื่อของขาเลย หรือถ้าเอาแบบเข้าใจๆ ก็คือสัญาณที่ขาเอาต์พุตจะไม่กลับเฟส หมายถึงสัญญาญมาป็นบวกก็ออกเป็นบวก โดยมีสัญญาลักษณ์ที่ระบุไว้คือ ( + )

Inverting input (V1) 
       ส่วนขานี่สัญญาณที่เข้ามาเป็นบวก Vout จะออกเป็นลบ กลับทางกับครับ โดยมีสัญญาลักษณ์ที่ระบุไว้คือ ( - )

ยกตัวอย่าง 
มีสัญญาญV1 = 2 μV, และ V2 = 4 μV สัญญาณ ขาVout เท่ากับเท่าไร


จากสมการ 
                                                     Vout = A(V2-V1)
                                                             = 100,000(4 μV-2 μV)
                                                             = 100,000 × (2 μV)
                                                             = 0.2 V
Control system ระบบควบคุม

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


--------------------------
****ยกตัวอย่าง*******
การเปิดน้ำใส่ถัง 10 ลิตร
ระบบที่เราควบคุมคือ การปิด-เปิดวาว์ลน้ำ
ผลที่เราต้องการคือ น้ำ 10ลิตร
-----------------------
ที่นี้เรามาดูซิว่าการควบคุมมีกี่แบบกัน
ดดยเรื่องระบบคุมควบมีมักใช้กันทั่วไปจะมีอยู่ 2 ประเภท คือ
Open loop control system
Close loop control system
แบบแรก Open loop control system
การควบคุมด้วยระบบนี้ จะไม่ยุ่งยากมาก เหมือนกับการ สั่งให้วาว์ลเปิด-ปิดอย่างเดียว โดยไม่สนใจว่า น้ำล้น หรือ น้ำเต็มถึงระบบที่เรากำหนด พูดกัน ภาษาวิศวะ ก็คือ
ไม่มี Feedback control นั้นเอง
- ระบบนี้ไม่มีความซับซ้อน
- ไม่ต้องการความแม่นยำ

แบบที่สอง Close loop control system
ระบบนี้จะเอาเอาต์พุตของระบบป้อนกลับเพื่อเทียบกับอินพุตที่เข้ามา เราจะเรียกว่าว่าค่าผิดผลาด (error)
เพื่อจะดูผลต่างกัน และนำผลนี้ป้อนเป็นอินพุต

****** ยกตัวอย่าง******
ถังเก็บน้ำ1000ลิตร แบบติดตั้งทุ่นลอย จะเห็นได้ว่าทุ่นลอยก็ถือว่าเป็น Sensor ในการตัดน้ำเมื่อน้ำถึงระดับ ดั้งนั้นเมื่อน้ำใกล้เต็มทุ่นจะค่อยๆปิดระบบจ่ายน้ำ
ดังนั้นการที่จะออกแบบระบบป้อนกลับ(feedback) เราต้องรู้จัก Sensor
เช่น โฟโตไดโอด, TRD ,IR laser วัดระยะ, พร็อกซิมิตี้เซนเซอร์, Load cell เป็นต้น
ส่วนในวงจรอิเล็กมักใช้ Op-amp เป็น Comparator เป็นวงจรเปรียเทียบ

Analog-to-digital converter (ADC)

Analog-to-digital converter (ADC) วงจรแปลงอนาล็อกเป็นดิจิตอล
เป็นวงจรแปลงจาค่าไฟ Analog ออกเป็นเลขดิจิตอล ค่า"0" และ "1"
ขนาดฺ Bit output ก็แล้วแต่ IC ว่าจะออก 4 bit , 8 bit, 16 bit หรือใหญ่กว่านั้นแต่สูตรคำนวน
เอาต์พุตจะยกตัวอย่างแบบ 8 bit ตามนี้ครับ

****ยกตัวอย่าง***
8 bit ADC
Vref ที่ 7 Vdc
Vin = 2.5 Vdc
เราจะได้binary ของ ADC เท่าไร

***สูตร***
Output = ( Vin x 255) / Vref
Output = เลขฐาน10 (decimal)
Vin = อะนาล็อก​อินพุต​ที่ต้องการแปลง
Vref = ไฟอ้างอิงที่จ่ายเข้าวงจรADC

     Output = (2.5 x255)​/ 7
     Output​ = 91
แปลงค่าเป็นbinary
01011011
แล้วค่าที่ได้เอาไปทำอะไร บ้างคนตั้งคำถาม
1.ใช้ป้อนเข้า Control​ler กรณี​ที่ตัว Control​ler ไม่มีport ADC
2.เอาไปต่อใช้งานควบคุมด้วยลอจิท "0"และ"1" จากportนั้นๆ

Bit และ byte อะไรกันวะ

ข้อมูลดิจิตอลจะอยู่ในรูปแบบ Bits และ แต่ละ Bit นั้นจะมีค่า 1 และ 0
ในวงจรดิจิตอลส่วนใหญ่จะใช้ไฟ 5 Vdc แสดงค่าลอจิทเป็น “1” และ 0 Vdc แสดงค่าเป็นลอจิท “0”

8bits ที่อยู่ด้วยกันจะเรียกกันว่า “byte” เช่น 8-bit microprocessor ถ้ามองให้แบบระบบคอมพิวเตอร์เห็น ก็จะได้รูปแบบ 11111111 binary หรือ 255 decimal ในเลขฐาน10

วิธีคำนวน 
เลขหนึ่งปรากฏตรงไหน ให้นำเลข Bit weights มาบวกกัน
Bit weight >       128 64 32 16    8   4   2   1
Binary number > 1    1   1    1    1   1   1   1
128+64+32+16 +8+4+2+1 = 255
1000 0001 = 129
1000 0010 = 130

วันศุกร์ที่ 28 กันยายน พ.ศ. 2561

Digital to Analog Converter (DAC)

Digital to Analog Converter (DAC)
วงจรเปลี่ยนเลขดิจิตอลให้เป็นอนาล็อคโวล์ตเทจ

จากรูปที่บล็อคไดอะแกรมแสดงนั้นเราจะมี
1.อินพุตดิจิตอล 8 บิต
2.Vref 10 โวลต์

โดยให้ผ่านออปแอมป์เพื่อให้ไฟที่อยู่นั้นคงที่ (ผมเคยทำวงจรนี้อยู่ครั้งนี้เวลาเอาไปต่อเป็นอินพุตในวงจรอื่นแล้วถ้าไม่มีออปแอมป์ไฟได้ได้จะลดลงเนื่องจากวงจรที่ผมต่อเข้ามันกินกระแสเยอะทำให้ไฟลดลง ทำให้ค่าที่อ่านออกมาไม่ตรง)
ค่าไฟอนาล็อค (Max)​จะเท่ากับ Vref โดยอินพุตดิจิตอลที่ป้อนคือ 11111111
ส่วน 0โวลต์ อินพุตที่ป้อนคือ 00000000

สูตรการคำนวนก็จะได้
Vout = (input x Vref) / 256
Vout = ไฟอนาล็อคเอาต์พุตจากวงจรDAC
input = เลขฐานสิบจากค่า binary input (วีธีคำนวนจากบทความที่แล้ว)
Vref = ไฟอินพุตที่ป้อนให้วงจร DAC

***ยกตัวอย่าง***
An 8-bit DAC has a Vref of 10 V. The binary input is 10011011
แปลงเลขก่อนเลยนะครับ
10011011
weight*128 64 32 16  8  4  2  1
Binary   1    0    0   1   1  0  1  1
เลข1 ตรงค่าตัวไหนให้นำมาบวกกันเลยนะครับ

128+16+8+2+1 = 155
***ลงสูตร***
Vout = (155x 10) / 256
Vout = 6.05 โวลต์

***เลขอินพุตมีถึงแค่ 255 เท่านั้นนะครับ เพราเรานั้นเลข0ด้วยจึงได้ทั้งหมด 256 ตัว ดังนั้นถ้าอินพุตเป็น 11111111 เท่ากับ 255 แล้วนำมาคำนวนจะได้เอาต์พุต 9.96โวลต์
ผิดพลาดประการใดบอกด้วนนะครับ
เพราะผมคือ Foolish Engineer

วันอังคารที่ 15 พฤษภาคม พ.ศ. 2561


ชี้โพรงให้กระรอก (Give the game away)
รายการพาไปเที่ยว เมืองแรกที่จะพาเจาะคือ มาเก๊า

we will bring you to travel first local is MACAU
Watch Teaser as url below
https://youtu.be/9Fdk9ZH6LuU

วันศุกร์ที่ 4 มีนาคม พ.ศ. 2559

Command Line : SCP (Linux)

การส่งผ่านหรือการโอนถ่ายข้อมูลจากคอมพิวเตอร์เครื่องหนึ่งไปอีกเครื่องหนึ่งสามารถทำได้โดยคำสั่ง scp

scp (secure copy) คือ การทำ secure transfer file ระหว่าง local และ remote host หรือระหว่าง remote host 2 เครื่องก็ได้ โดยใช้ secure shell protocol (SSH) พูดง่ายๆว่า เครื่องที่เราจะส่งข้อมูลต้องอยู่วงแลนเดียวกัน

รูปแบบคำสั่ง

scp <File> User@host:directory/<File>

File  คือ ไฟล์ที่เราต้องการส่งไปอื่นเครื่องหนึ่ง
User คือ Userของเครื่องที่เราจะส่งไป (User name Login)
host คือ  Hostname ของเครือง หรือ *IP address ของเครื่องที่เราจะส่งไป 
Directory คือ Path ปลายทาที่เราจะส่ง

 * IP address  ดูจากการใช้คำสั่ง ifconfig

นอกจากนี้เรายังสามารถคัดลอกเป็นโฟล์เดอร์ก็ยังได้เพียงเพียงแค่ใส่ -r หน้า scp
 แบบนี้ scp -r <Folder> User@host:directory 

ยกตัวอย่่าง
scp -r testflow root@192.168.1.50:/root/test/

**หมายเหตุ : หากมีข้อความให้ตอบ <yes/no> ให้พิมพ์ yes นะครับเครื่องจะส่งข้อมูล จะถามเฉพาะครั้งแรกที่โอนไฟล์ในครั้งนั้น

นิพจน์ปรกติ Regular Expressions Part END

[] 
ใช้เขียนแทนอักขระหนึ่งตัวที่อยู่ในขอบเขต ซึ่งระบุไว้ภายในวงเล็บ เช่น "[bcdf]an" มีความหมายว่า ban can dan และ fan
                           ----------------------------------------------------------------------------------------------------
ยัติภังค์ ใช้เขียนภายในวงเล็บเหลี่ยมระหว่างอักขระสองตัว เพื่อบ่งบอกว่าเป็นอักขระหนึ่งตัวที่มีรหัสแอสกีหรือยูนิโคดยู่ในช่วงนั้น เช่น "[a-z]an" มีความหมายว่า aan ban can เรื่อยไปจนถึง zan
                                  ----------------------------------------------------------------------------------------------------
ปรัศนี ใช้บ่งบอกว่ามีนิพจน์ก่อนหน้านี้จำนวน 0 หรือ 1 นิพจน์ (มีนิพจน์หรือไม่มีก็ได้) เช่น "ปร?กติ" มีความหมายว่า ปกติ หรือ ปรกติ
                                 ----------------------------------------------------------------------------------------------------
+
เครื่องหมายบวก ใช้บ่งบอกว่ามีนิพจน์ก่อนหน้านี้จำนวน 1 นิพจน์หรือมากกว่า เช่น "go+gle" มีความหมายว่า gogle google gooogle เป็นต้น แต่ไม่เท่ากับ ggle
                                 ----------------------------------------------------------------------------------------------------

{n}

วงเล็บปีกกาใช้บ่งบอกว่าต้องมีนิพจน์ก่อนหน้านี้จำนวน n นิพจน์ เช่น "go{5}gle" มีความหมายว่า gooooogle เพียงตัวเดียว

{m,n}

วงเล็บปีกกาที่มีจุลภาคข้างใน ใช้บ่งบอกว่าต้องมีนิพจน์ก่อนหน้านี้จำนวน m นิพจน์ถึง n นิพจน์ เช่น "go{2,4}gle" มีความหมายว่า google gooogle และ goooogle หากไม่ระบุตัวเลข n จะหมายถึงต้องมีนิพจน์จำนวนตั้งแต่ m นิพจน์เป็นต้นไป
​                                 ----------------------------------------------------------------------------------------------------
^
เครื่องหมายหมวก ใช้เขียนเป็นตัวแรกสุดของนิพจน์ปรกติ เพื่อบ่งบอกว่านิพจน์ที่ต้องการค้นหาอยู่ต้นบรรทัดหรือต้นสตริงเท่านั้น สามารถใช้คู่กับ $
                                 ----------------------------------------------------------------------------------------------------

$
เครื่องหมายสกุลเงิน ดอลลาร์ ใช้เขียนเป็นตัวท้ายสุดของนิพจน์ปรกติ เพื่อบ่งบอกว่านิพจน์ที่ต้องการค้นหาอยู่ท้ายบรรทัดหรือท้ายสตริงเท่านั้น สามารถใช้คู่กับ ^

นิพจน์ปรกติ ( Regular Expressions) Part1

บทนี้ว่าด้วยเรื่อง  นิพจน์ปรกติ ( Regular Expressions)😒 มาไทยๆเลยวันนี้
ต้องขอบคุณบทความนี้จาก wikipedia ครับ มาเริ่มกันเลยมันคืออะไร

นิพจน์ปรกติ (อังกฤษregular expression สามารถย่อได้เป็น regexp หรือ regex) ในวิทยาการคอมพิวเตอร์ คือ สตริที่อธิบายถึงรูปแบบของสตริงตามโครงสร้างรูปแบบที่กำหนด ในการค้นหาและปรับเปลี่ยนข้อความ ภาษาโปรแกรมหลายภาษายังรองรับการใช้นิพจน์ปรกติสำหรับการจัดการและปรับเปลี่ยนสตริง

❓❓❓ เริ่มต้นคงงงกันหน่อย เริ่มตัวแรกอย่างง่ายน่าจะพอจำได้กันคือ *  เครื่องหมายดอกจันนะครับก็อยู่ในกลุ่ม Regular เช่นกัน

🙋โทษครับผมไม่รู้จักมันคืออะไร และใช้ยังไง
💻 เอาตัว*  เครื่องหมายดอกจันแล้วกันนะครับ หมายถึง ให้เป็นตัวอักษรใดๆก็ได้(ไม่มีอักษรก็นับ) นับตั้งแต่อักษรก่อนหน้านี้ 0คำขึ้นไป เช่น  ถ้าเรามีคำ  Good Gold  Gd  God
        ถ้าเราสนใจแต่ตัวแรกเป็น G และตัวสุดท้ายคือd โดยไม่าสนใจตัวกลาง เราก็สามารถเขียนเป็นรูปแบบ  Go*d
        หมายเหตุ ถ้า * ไปใช้กับการหาคำ จะหมายความว่า การทำซ้าจากตัวหน้า

💻  ตัวจุด (.) คือ อักษรใดๆ 1 ตัว ใช้บนคำ เท่านั้น 🚫ห้ามใช้บนการหาไฟล์   (งงไหมครับ)
ยกตัวอย่างการใช้จุด  
รูปแบบคำสั่ง  findsrt  [คำ] [ไฟล์]


จากรูป การใช้1จุดเพื่อแทนการหา1อักษรระหว่าง G และ d เท่านั้น
ส่วนบรรทัดที่สอง การใช้2จุดเพื่อแทนการหา2อักษรระหว่าง G และ d เท่านั้น

หรืออีกวิธีการใช้จุด(.)และดอกจัน(*)ผสมกันในการหาคำ ในไฟล์ ระหว่าง


👤บางคนอาจจะถามว่า ทำไมไม่ตัดจุดออกละครับ ในเมื่อเราจะเอาทุกคำ


💫ผลออกมาได้มาไม่ตรงกับที่เราคิด💫 เพราว่าดอกจันหมายถึงทำซ้ำบนการหาคำหาใช้เดียวๆหมายถึง
1.ตัดตัวที่อยู่หน้าดอกจันออก เพื่อหาผล  >> Gd  และ God
2.มองหาตัวที่เหมือนกับตัวอักษรหน้าดอกจันมาแทนตัวเอง Good


ส่วนการใช้ดอกจับบน คำสั่งDir ก็ยังเหมือนเดิม เป็นทุกตัวอักษรครับ
💻 ถ้ามีไฟล์ serial number  ที่เราต้องการหาเฉพาะก็ได้   >> dir EADSS*.log หรือ  ต้องการทุกนามสกุล 95521.*

วันอาทิตย์ที่ 14 กุมภาพันธ์ พ.ศ. 2559

Command line : RD

RD
Remove Directory
คำสั่ง RD เป็นคำสั่งใช่ลบโฟล์เดอร์ รูปแบบคำสั่งง่ายๆครับตามข้างล่างนี้เลย
Syntax
      RD pathname
      RD /S pathname
      RD /S /Q pathname
   
Key
   /S  : Delete all files and subfolders
         in addition to the folder itself.
         Use this to remove an entire folder tree.
                  ลบทุกไฟล์ และ ทุกโฟล์เดอร์ย่อย


     /Q : Quiet - do not display Y/N confirmation
         ไม้ต้องแสดงบนหน้าจอถาม Y/N เพื่อยืนยันการลบ

         RD will only delete an empty folder.
        ถ้าใช้คำสั่ง RD เพื่อลบโฟล์เดอร์จะใช้ได้เฉพาะโฟล์เดอร์เปล่าเท่านั้นนะครับ
 

 

หากต้องการลองคำสั่งนี้ให้สร้างโฟล์เดอร์จำลองเพื่อทำการทดลองนะครับ หากไปใช้จริงข้อมูลที่ไม่ได้สำรองข้อมูลไว้เอาคือกลับมาไม่ได้นะครับ

Please Backup data or simulator folder before try this command
       

Command line : Xcopy

XCOPY

Copy files and/or directory trees to another folder. XCOPY is similar to the COPY command except that it has additional switches to specify both the source and destination in detail.
Xcopy has been deprecated under Vista and Windows 2008, this means that while still available now it might disappear in a future OS release. To ensure your scripts are 'future proof' use other tools (such as Robocopy) instead of xcopy. 

การคัดลอก หรือ สำเนาไฟล์ และ/หรือโฟล์เดอร์ทั้งแบบโฟล์เดอร์เดียว และ โฟล์เดอร์ที่มีย่อยๆในโฟล์เดอร์นั้นๆ XCOPY จะคล้ายคลึงกับคำสั่ง COPY.

  XCOPY is particularly useful when copying files from CDROM to a hard drive, as it will automatically remove the read-only attribute.

Xcopy เป็นประโยชน์อย่างยิ่งเมือคัดลอกไฟล์จาก CDROM ไปฮาร์ดิสมันจะลบ read-only attribute อัตโนมัติ


Syntax
      XCOPY source [destination] [options]

Key
        source : Pathname for the file(s) to be copied (accepts wildcards).

        destination : Pathname for the new file(s).   
 
        [options] can be any combination of the following: Source

Options  
 
      /A Copy files with the archive attribute set (default=Y)

      /M Copy files with the archive attribute set and turn off the archive attribute, use this option when making regular Backups (default=Y)  

 
     /H Copy hidden and system files and folders (default=N)
                 คัดลอกไฟล์ที่ตั้งค่าซ่อนไว้ และ ไฟล์ระบบ และ โฟล์เดอร์

     /D:mm-dd-yyyy Copy files changed on or after the specified date. If no date is given, copy only files whose source date/time is newer than the destination time.   
     /U Copy only files that already exist in destination.

     /S Copy folders and subfolders
                 คัดลอกโฟล์เดอร์และโฟล์เดอร์ย่อย   

     /E Copy folders and subfolders, including Empty folders. can be used to modify /T.
      คัดลอกโฟล์เดอร์และโฟล์เดอร์ย่อย รวมไปถึงโฟล์เดอร์เปล่าสามารถใช้option /T แทนได้

/EXCLUDE:file1[+file2][+file3]...
The files can each contain one or more full or partial pathnames to be excluded. When any of these match any part of the absolute path of a SOURCE file, then that file will be excluded.
         For example, specifying a string like \obj\ or .obj will exclude all files underneath the directory obj or all files with the .obj extension respectively.

Copy Options

     /W Prompt you to press a key before starting to copy.
     ข้อความบอกรอกดปุ่มใดๆเพื่อเริ่มทำการคัดลอก 

 
      /P Prompt before creating each file.
                  ข้อความบอกก่อนสร้างไฟล์หรือไดเร็กทรอรี่ หากต้องการสร้างไฟล์พิมพ์  F  ถ้าต้องการ ไดเร็คทรอรี่ให้พิมพ์  D ตามด้วย Enter เนื่องจากคำสั่งนี้จะถามทุกไดเร็คทรอรี่ และ ทุกไฟล์ต้องคอยมานั่งตอบมันตลอดเวลาและต้องรู้ว่าที่เครื่องถามกลับว่าให้สร้างไฟล์หรือไดเร็กทรอรี่ หากเครื่องถามสร้างไดเร็คทรอรี่ แล้วเราพิมพ์ F เพื่อสร้างไฟล์มันจะสร้างผิดและมันจะไม่คัดลอกไฟล์ในนั้น
          
              ยกตัวอย่าง
                                                                              c:\

              ถ้าเรามีไฟล์อยู่ในโฟล์เดอร์แล้วเราต้องการคัดลอกเมื่อเราส่งคำสั่งไปเครื่องจะมองสิ่งที่เจอก่อน คือ โฟล์เดอร์ มันก็จะถ้าจะสร้างไฟล์หรือโฟล์เดอร์ ต่อมาจะถามว่าคัดลอกไฟล์หรือไม่ Y/N




   /Y    Suppress prompt to confirm overwriting a file.
         can be preset in the COPYCMD env variable.
                  สำหรับ option /Y เราต้องการเขียนไฟล์ทับทั้งหมด




   /-Y   Prompt to confirm overwriting a file.
                                      สำหรับ option /-Y จะมี3อย่างที่จะถามเรา คือ  Yes/No/ALL
                    1. Yes ต้องการเขียนทับไฟล์นี้หรือไม่ ถามเป็นไฟล์ต่อไฟล์ไป
                    2. No   ไม่ต้องการเขียนทับ หรือ skip  ถามเป็นไฟล์ต่อไฟล์ไป
                    3.All    เขียนทับทุกไฟล์

                    ยกตัวอย่าง ถ้าเรามีไฟล์ที่3 ที่ไม่ต้องการเขียนทับ (หรือมองตามชื่อไฟล์ก็ได้) เราจะตอบแบบนี้ครับ                    ไฟล์1 ตอบ Yes
                   ไฟล์2 ตอบ Yes
                   ไฟล์3 ตอบ no
                   ไฟล์4 ตอบ All
 

 
   /V Verify that the new files were written correctly.

   /C Continue copying even if an error occurs.
      คัดลอกต่อไปถึงแม้จะเจอความผิดพลาด

    /I If in doubt always assume the destination is a folder e.g. when the destination does not exist.

    /B Copy the Symbolic link itself, not the target of the file.   

    /G Allow the copying of encrypted files to a destination that does not support encryption.

    /J Copy using unbuffered I/O. Recommended for very large files.

    /Q Do not display file names while copying.   

    /F Display full source and destination file names while copying.
        สำหรับ option /F จะแสดงpath ต้นทางและ ปลายทางให้ดูว่าเราคัดลอกไปที่ใด

    /L List only - Display files that would be copied.   
    /Z Copy files in restartable mode. If the copy is interrupted part way through, it will restart if possible. (use on slow networks)


 

 
Destination Options (option สำหรับ ปลายทาง)

     /R Overwrite read-only files
        เขียนทับเฉพาะ read-only files

     /T Create folder structure, but do not copy files. Do not include empty folders or subfolders. /T /E will include empty folders and subfolders.
        สร้างโฟล์เดอร์ โดยไม่ต้องให้เครื่องถาม

      /K Copy attributes. XCOPY will otherwise reset read-only attributes.
  
     /N If at all possible, use only a short filename (8.3) when creating a destination file. This can be necessary when copying between disks that are formatted differently e.g NTFS and VFAT, or when archiving data to an ISO9660 CDROM.   

     /O Copy file Ownership and ACL information.  
 
     /X Copy file audit settings (implies /O).
 

XCOPY will accept UNC pathnames.
To always overwrite destination files use the COPYCMD environment variable: SET COPYCMD=/Y

When comparing Dates/Times the granularity (the finest increment of the timestamp) is 2 seconds for a FAT volume and 0.1 microsecond for an NTFS volume.