Chủ Nhật

Nguồn điện máy tính: Quan trọng hơn bạn nghĩ

Khi xây dựng hệ thống máy tính mới, người dùng thường không mấy khi chú ý tới một thành phần rất quan trọng - bộ nguồn. Thường người ta chi khá bộn cho các thành phần chính của máy tính như CPU, RAM, bo mạch chủ... Việc chi 150 USD cho card đồ họa thế hệ mới có vẻ hợp lý hơn đầu tư khoản tiền đó cho bộ nguồn (BN) hay Power Supply Unit (PSU). Tuy nhiên, những thử nghiệm cho thấy BN đóng vai trò quan trọng đối với hiệu quả hoạt động của hệ thống. Chip lõi kép, đồ họa kép cùng với những "món đồ chơi" ngốn điện khủng khiếp khác đang ngày càng dồn "áp lực" lên BN. Bài viết này giới thiệu các khái niệm cơ bản, những thông số quan trọng, cách thức để nhận biết một BN tốt và phù hợp với máy tính của bạn.


NHỮNG VẤN ĐỀ CƠ BẢN

Tất cả các bộ nguồn khi xuất xưởng đều phải có tem chứng nhận chất lượng với đầy đủ thông số như điện thế, công suất...


1. Công suất

Công suất nguồn điện, giá trị được tính như sau:
Watt (W) = Voltage (V) x Ampere (A); với V là hiệu điện thế Và A là cường độ dòng điện.


2. Các đường điện

Bộ nguồn thường có nhiều đường điện khác nhau, gồm: +3,3V, +5V, +12V, -5V, -12V. Ý nghĩa của chúng như sau:

-12V: Được sử dụng chính cho các mạch điện cổng Serial và hầu như rất ít được dùng trên các hệ thống mới. Mặc dù các BN mới đều có tính tương thích ngược nhưng công suất các đường -12V chỉ chưa tới 1A.

-5V: Chủ yếu sử dụng cho các bộ điều khiển ổ đĩa mềm và mạch cấp điện cho các khe cắm ISA cũ. Công suất đường -5V cũng chỉ dưới 1A.
0V: Đây là đường "mát" (Ground) của các hệ thống máy tính cá nhân.


+3,3V: Là một trong những mức điện thế mới trên các bộ nguồn hiện đại, xuất hiện lần đầu tiên khi chuẩn ATX ra đời và ban đầu được sử dụng chủ yếu cho bộ vi xử lý. Hiện nay, các bo mạch chủ (BMC) mới đều nắn dòng +3,3V để nuôi bộ nhớ chính.

+5V: Nhiệm vụ chính là cấp điện cho BMC và những thành phần ngoại vi. Ngoài ra, các loại bộ vi xử lý như Pentium III hay AthlonXP cũng lấy điện từ đường 5V thông qua các bước nắn dòng. Trên những hệ thống mới, đa số các thành phần linh kiện đều dần chuyển qua sử dụng đường 3,3V ngoại trừ CPU và BMC.

+12V: Trong các hệ thống máy tính hiện đại, đây là đường điện đóng vai trò quan trọng nhất, ban đầu nó được sử dụng để cấp nguồn cho mô tơ của đĩa cứng cũng như quạt nguồn và một số thiết bị làm mát khác. Về sau, thiết kế mới cho phép các khe cắm hệ thống, card mở rộng và thậm chí là cả CPU cũng "ăn theo" dòng +12V.

Khi công tắc nguồn được nhấn lần đầu tiên và BN khởi động, nó sẽ mất một khoảng thời gian để các thành phần trong nguồn xuất ra điện năng cho các thành phần máy tính hoạt động. Trước khi đó, nếu máy tính khởi động, các linh kiện sẽ dễ bị hỏng hóc hoặc hoạt động không bình thường do đường điện chưa ổn định. Chính vì vậy trên các hệ thống mới, đôi khi phải mất tới 1-2 giây sau khi bạn nhấn nút công tắc máy thì hệ thống mới bắt đầu làm việc. Điều này là do hệ thống phải chờ tín hiệu đèn xanh cho biết điện thế đã sẵn sàng từ BN gửi tới BMC. Nếu không có tín hiệu này, BMC sẽ không cho phép máy tính hoạt động.

Trong số các đường điện chính, những đường có giá trị dương (+) đóng vai trò quan trọng hơn và bạn phải luôn để mắt tới chúng. Mỗi đường sẽ có chỉ số Ampere (A) riêng và con số này càng cao càng tốt. Công suất tổng được tính bằng công thức W= VxA. Ví dụ đối với BN có đường 3,3V là 30A, 5V là 30A và 12V là 25A thì các đường điện và công suất được tính như sau:

+ Công suất đường điện 3.3V = 3.3V x 30A = 100W

+ Công suất đường điện 5V = 5V x 30A = 150W

+ Công suất đường điện 12V = 12V x 25A = 300W

Như vậy tổng công suất nguồn sẽ là 100W + 150W + 300W = 550W. Tuy nhiên trên thực tế còn nhiều yếu tố khác ảnh hưởng tới con số tổng này và chúng ta sẽ đề cập tới ở phần sau bài viết.

3. Chuẩn của bộ nguồn

Chuẩn thống trị hiện nay trên máy tính để bàn nói chung chính là ATX (Advanced Technology Extended) 12V, được thiết kế bởi Intel vào năm 1995 và đã nhanh chóng thay thế chuẩn AT cũ bởi nhiều ưu điểm vượt trội. Nếu như với nguồn AT, việc kích hoạt chế độ bật được thực hiện qua công tắc có bốn điểm tiếp xúc điện thì với bộ nguồn ATX bạn có thể bật tắt bằng phần mềm hay chỉ cần nối mạch hai chân cắm kích nguồn (dây xanh lá cây và một trong các dây Ground đen). Các nguồn ATX chuẩn luôn có công tắc tổng để có thể ngắt hoàn toàn dòng điện ra khỏi máy tính. ATX có 5 nhánh thiết kế chính:

- ATX: jack chính 20 chân (thường dùng cho Pentium III hoặc Athlon XP).

- WTX: jack chính 24 chân, dùng cho Pentium II, III Xeon và Athlon MP.

- ATX 12V: jack chính 20 chân, jack phụ 4 chân 12v (Pentium 4 hoặc Athlon 64).

- EPS12V: jack chính 24 chân, jack phụ 8 chân dùng cho các hệ thống Xeon hoặc Opteron.

- ATX12V 2.0: jack chính 24 chân, jack phụ 4 chân (Pentium 4 775 và các hệ thống Athlon 64 PCI-Express)

Gần đây xuất hiện một chuẩn mới với tên gọi BTX (Balanced Technology Extended) có cách sắp xếp các thành phần bên trong máy hoàn toàn khác với ATX hiện nay, cho phép các nhà phát triển hệ thống có thêm tùy chọn nhằm giải quyết vấn đề nhiệt lượng, độ ồn... Chuẩn BTX được thiết kế tối ưu cho những công nghệ mới hiện nay như SATA, USB 2.0 và PCI Express. Yếu tố xử lý nhiệt độ trong máy tính BTX được cải tiến rất nhiều: hầu hết các thành phần tỏa nhiệt chính đều được đặt trong luồng gió chính nên sẽ tránh việc phải bổ sung các quạt riêng cho chúng (sẽ gây tốn thêm năng lượng, tăng độ ồn và chật chội không cần thiết). Hiện tại bạn có thể tìm thấy một vài bộ nguồn với tem chứng nhận hỗ trợ BTX nhưng không nhiều vì chưa thông dụng.

4. Các loại chân cắm


Dây cắm của nguồn điện máy tính được đánh mã màu rất chi tiết, màu đỏ là điện +5v, màu vàng là +12v, màu đen là dây "mát" (Ground)... Chúng được tập hợp lại thành những dạng chân cắm cơ bản sau đây:

- Molex: Sử dụng cho các loại đĩa cứng và ổ đĩa quang, ngoài ra bạn cũng có thể sử dụng để cắm quạt và một số thiết bị khác như card đồ họa AGP (Geforce 5, 6 hoặc Radeon X800) hay BMC như của Asus hay DFI.

- Đầu cắm nguồn chính: Nguyên bản ATX ban đầu có 20 chân cắm, chuẩn mới 2.0 đã nâng số chân cắm chính lên 24 chân. Bạn cũng có thể tìm thấy một số BN có dạng chân 20+4 với chốt gắn cho phép sử dụng cả trên các BMC với đầu điện nguồn dạng 20 hay 24 chân.

- Dây điện phụ 12V: Xuất hiện cùng với hệ thống Pentium 4. Dây này gồm 4 đầu cắm với 2 chân 12V và 2 chân "mát".

- Đầu cắm SATA: Những BN mới nhất đều phải có tối thiểu từ 2 tới 4 chân cắm dẹt dành cho những đĩa cứng SATA hiện đại. Tuy nhiên bạn cũng có thể sử dụng các đoạn dây chuyển nếu như nguồn của mình không có loại chân này.

- Đầu PCI-Express: Cũng tương tự như với chân cắm SATA, đầu cắm PCI-Express là thứ không thể thiếu trong các BN thế hệ mới. Những nguồn điện với chứng nhận SLI hoặc Crossfire cho các hệ thống đồ họa kép luôn có tới 2 đầu cắm dạng này để sử dụng với card đồ họa PCI-Express. Tất nhiên, nếu nguồn của bạn không có đầu cắm mà vẫn muốn sử dụng card đồ họa mới, bạn vẫn có thể sử dụng các jack chuyển đối (đôi khi được tặng kèm theo card).

- Đầu cắm ổ đĩa mềm: Nguyên thủy, giắc cắm này được sử dụng cho ổ đĩa mềm, nó cũng gồm 2 dây ground, 1 dây +5V và 1 dây +12V. Về sau, có khá nhiều thiết bị khác cũng sử dụng kiểu đầu cắm này như các card đồ họa, đầu chuyển đổi ATA – SATA của đĩa cứng và thậm chí là cả BMC như DFI Lanparty NF4.

- Đầu cắm EPS 12V 8 chân: Thường được sử dụng cho các BMC workstation trên những hệ thống máy tính chuyên nghiệp với CPU Opteron hay Xeon. Gần đây, một số BMC desktop mới cũng bắt đầu sử dụng đầu cắm này ví dụ như dòng P5WD2 của Asus.

Hiện nay, thiết kế tháo rời (Modular Concept) của bộ nguồn máy tính đang bắt đầu được sử dụng. Bạn hãy thử hình dung một bộ nguồn chuẩn ATX 2.01 sẽ có khoảng 8-10 đầu cắm Molex, 1 đầu cắm chính, một hoặc hai đầu cắm PCI-Express, 1 đầu 12V, 2 tới 4 đầu SATA và một số các đầu giao tiếp riêng đặc biệt khác. Tuy nhiên hệ thống máy tính của bạn nếu chỉ ở mức cơ bản và sử dụng chưa tới ½ số đầu cắm này thì chắc chắn việc sắp xếp gọn gàng những đầu cắm dư bên trong máy sẽ khá rắc rối. Modular Concept cho phép bạn chỉ cắm những dây với các đầu nối cần dùng và loại bỏ những chân không cần thiết. Nhờ vậy nội thất bên trong case của bạn sẽ gọn gàng và tạo điều kiện thuận lợi cho các giải pháp làm mát nói chung. Tuy nhiên kiểu thiết kế mới này hiện tại mới chỉ được áp dụng trên những BN cao cấp đắt tiền.

5. Các đường điện âm

Nếu sử dụng một số phần mềm đo điện hay thậm chí là đồng hồ đo, bạn sẽ thấy các giá trị của đường điện âm (-) khá thấp so với các đường dương (+). Điều này là do hiện nay chúng không còn quan trọng nữa. Mặc dù một bộ nguồn ATX 20 chân có chân số 12 là -12v và chân số 18 là -5v nhưng hầu như không bao giờ được dùng. Một số thiết bị cần tới điện thế âm bao gồm:

+ Các card mở rộng ISA.

+ Cổng serial hoặc LAN

+ Ổ đĩa mềm thế hệ cũ.

6. Thời gian duy trì điện (Hold-up time)

Giá trị Holdup Time xác định khoảng thời gian tính bằng mili-giây mà một bộ nguồn có thể duy trì được các đường điện ra ở đúng định mức khi đường điện vào bị ngắt (ví dụ như mất điện). Điều này rất có ích đặc biệt khi bạn sống trong khu vực điện không ổn định (ví dụ trường hợp điện đột ngột chớp ngắt rồi có lại thì máy tính vẫn có thể hoạt động bình thường). Giá trị Hold-up time của chuẩn ATX là 17ms và bộ nguồn máy tính nên có chỉ số này càng cao càng tốt.

7. Power Factor Correction (PFC)

PFC cho phép việc cung cấp điện đạt hiệu quả sử dụng cao. Có hai loại PFC chính là Active PFC và Passive PFC. Tất cả các bộ nguồn được sản xuất vào hiện tại đều thuộc một trong hai loại này.

- Active PFC: Đây là kiểu hiệu quả nhất. Nó sử dụng mạch điện tự động điều chỉnh để hiệu suất sử dụng điện có thể đạt tới 95% (theo lý thuyết). Ngoài ra, Active PFC cũng có khả năng khử nhiễu và căn chỉnh đường điện vào (cho phép bạn cắm vào bất kì ổ cắm 110V cho tới 220V thông dụng nào mà không cần phải quan tâm tới các chỉ số). Tuy nhiên do kiến trúc phức tạp của Active PFC nên những bộ nguồn dùng công nghệ này đều có giá khá cao. Một số bộ nguồn Active PFC vẫn cho phép người dùng sử dụng công tắc chuyển xác định dòng điện đầu vào.

- Passive PFC: Đây là kiểu thông dụng nhất hiện nay. Khác với Active PFC, Passive PFC căn chỉnh dòng điện thông qua các tụ lọc và chính vì thế khả năng làm việc của nó sẽ bị thay đổi theo thời gian cũng như chịu ảnh hưởng khá lớn từ các yếu tố bên ngoài như nhiệt độ, chấn động... Những bộ nguồn dùng công nghệ Passive PFC đều yêu cầu người dùng phải chỉnh lại điện thế đầu vào thông qua một công tắc nhỏ. Nguồn Passive PFC có giá rẻ hơn nguồn Active PFC.

Các loại nguồn không sử dụng PFC (Non PFC) hiện nay đều được khuyến cáo không nên dùng. Ở một số quốc gia EU, mọi bộ nguồn đưa ra thị trường đều được yêu cầu phải có trang bị hoặc Active PFC hoặc Passive PFC. PFC cho phép tiết kiệm điện sử dụng, giảm sức tải cho các đường dây điện trong nhà: điều này rất có lợi khi bạn thành lập phòng máy hoặc sử dụng nhiều máy cùng một nguồn điện. Bộ nguồn dạng Active PFC thường cho đường điện ra ổn định hơn so với Passive PFC, nhờ vậy thiết bị trong máy hoạt động ổn định và có tuổi thọ cao hơn.

8. Năng lượng cực đại và năng lượng liên tục

Mức năng lượng liên tục (Continuous Power) là chỉ khả năng cấp điện của nguồn trong khoảng thời gian dài liên tục còn năng lượng cực đại (Peak Power) lại chỉ mức tối đa trong khoảng thời gian ngắn. Ví dụ bạn cắm một loạt thiết bị với tổng công suất khoảng 430W vào bộ nguồn có chỉ số Continuous Power là 400W, chúng vẫn có thể hoạt động được trong khoảng thời gian ngắn nếu mức Peak Power của nguồn đạt trên 430W nhưng sau một khoảng thời gian nhất định, các linh kiện trong nguồn sẽ bị trục trặc.

9. Độ ồn


Chỉ số xác định độ ồn của một bộ nguồn được đo bằng đơn bị dB và nó phải phù hợp với độ ồn của môi trường làm việc. Lấy ví dụ, trong văn phòng ồn ào, bộ nguồn 30dB có thể không phải là vấn đề nhưng nếu trong phòng khách gia đình yên tĩnh, con số này sẽ gây khó chịu, đặc biệt là về đêm. Một quy tắc bất thành văn là bộ nguồn với quạt 120mm sẽ làm việc êm hơn so với bộ nguồn có quạt 80mm hay 90mm tốc độ cao mặc dù hiệu năng làm mát của chúng có thể tương đương nhau. Khi bộ nguồn làm việc nặng nhọc hơn (nuôi nhiều thiết bị) thì nhiệt lượng do nó tỏa ra cũng tăng cao và đối với những bộ nguồn có quạt tự điều chỉnh tốc độ, số vòng quay của quạt cũng tăng lên và khi đó những âm thanh ồn ào bắt đầu xuất hiện. Ví dụ khi một bộ nguồn làm việc ở mức 70%, tiếng ồn chỉ khoảng 20dB nhưng khi lên tới con số 90% thì âm lượng phát ra sẽ có thể lên tới 35dB hoặc hơn. Bạn nên xem xét kĩ vấn đề này: nếu cần nguồn 300W, bạn nên chọn loại 350W để công suất làm việc vừa đủ 85%, nếu chọn loại 400W thì con số này chỉ còn 75% và có thể độ ồn cũng giảm theo.

Một số bộ nguồn loại siêu êm có thể không sử dụng quạt hoặc chỉ dùng những loại quạt rất êm nhưng hầu hết chúng không dành cho những máy tính bình thường vì giá cực đắt, điển hình như XG Magnum 500 của MGE.

Nếu hay lượn lờ trên các website công nghệ, có thể bạn cũng sẽ bắt gặp một số bộ nguồn với giải pháp làm mát bằng nước nhưng loại này khá nguy hiểm đối với những người ít kinh nghiệm.


10. Chiết áp chỉnh điện thế (Adjustable Pot)

Một số bộ nguồn tốt có kèm theo các chiết áp nhỏ bên trong để chỉnh hiệu điện thế cho các đường điện. Trong thực tế, nếu đường điện 12V của bạn tụt xuống dưới 11,5V, nó sẽ gây ra mất ổn định cho toàn hệ thống. Hãy nhớ rằng chuẩn ATX cho phép điện thế mỗi đường dao động trong khoảng 5% và bạn có thể chỉnh lại lên 12V thông qua những chiết áp đó. Tuy nhiên đây là tính năng nâng cao và chỉ nên thực hiện nếu bạn biết mình đang làm điều gì. Một số sản phẩm nguồn chuyển hẳn các chiết áp này ra ngoài để người dùng tự thay đổi thoải mái ví dụ như series TrueControl của Antec.

Giá trị giới hạn an toàn của các đường điện theo chuẩn ATX như sau:


11. Chế độ Soft Power và tín hiệu chờ 5V

Soft Power là cách thức mà bộ nguồn máy tính được bật lên hoặc tắt đi nhưng thay vì dùng công tắc cứng như chuẩn AT trước kia thì được kích hoạt khi BMC ra lệnh cho bộ nguồn. Cũng nhờ vào điều này mà người dùng có thể điều khiển năng lượng hệ thống qua phần mềm. Bạn có thể dễ dàng kiểm chứng điều này bằng khả năng tắt máy của hệ điều hành Windows hay bật máy lên từ bàn phím, chuột. Nguyên tắc chính để BMC ra lệnh cho bộ nguồn là thông qua tín hiệu chờ của đường +5V Standby. Đường điện này độc lập hoàn toàn với các đường nuôi thiết bị khác và sẽ có tín hiệu bất cứ khi nào bạn cắm điện vào nguồn, một số BMC mới thường có đèn tín hiệu để báo trạng thái +5V Standby. Ngoài ra trên hệ thống máy tính còn có một vài đường điện phụ khác, gồm:

+ Dòng cảm ứng +3.3V (+3.3V Sense): Chức năng chính là theo dõi điện thế của đường +3.3V nuôi BMC. Nhờ vậy, bộ nguồn có thể căn chỉnh dòng cho chính xác.

+ Điều khiển quạt (Fan Control): Tín hiệu điều khiển quạt cho phép hệ thống nói chung và BMC nói riêng thay đổi tốc độ quạt của bộ nguồn. Khi điện thế của dòng này tụt xuống dưới 1V, quạt sẽ tự động tắt. Khi đạt giá trị trên 10.5V, quạt sẽ hoạt động ở mức tối đa. Chức năng chính của thiết kế này là cho phép hệ thống tắt quạt khi máy tính chuyển sang trạng thái nghỉ (Sleep Mode) hoặc thay đổi tốc độ quạt theo nhiệt độ linh kiện.

+ Theo dõi trạng thái quạt (Fan Monitor): Đây là bạn đồng hành của tính năng điều kiển quạt, nó cho phép theo dõi tốc độ quay của quạt trong hệ thống. Nhiệm vụ chính của nó là cảnh báo người dùng khi có một quạt làm mát nào đó gặp trục trặc và ngừng hoạt động.
Nguồn: kythuatlaptop.com

Kinh nghiệm kiểm tra lỗi phần cứng máy tính

Một ngày đẹp trời, bạn bật máy tính lên nhưng màn hình chỉ toàn một màu đen. Bạn không biết phải làm gì?

Khi máy tính không thể khởi động thì phần cứng là thứ bạn cần quan tâm nhất, nhưng để có thể tìm ra đúng bệnh cho chiếc máy tính thì bạn nên làm theo trình tự dưới đây để tránh chẩn đoán sai nguồn cơn. Những bước dưới đây có thể áp dụng khi máy tính không thể khởi động được, có tiếng kêu lạ hoặc có khởi động nhưng không thể vào được Windows, còn nếu đã vào được Windows thì vấn đề của bạn nằm ở phần mềm).

1.Kiểm tra nguồn điện

Không riêng gì máy tính mà tất cả các thiết bị điện khi hỏng hóc thì việc đầu tiên bạn nên làm là kiểm tra lại nguồn điện, từ nguồn điện trong nhà, ổ nối cho tới dây nguồn của máy. Cách đơn giản nhất là dùng bút thử điện để kiểm tra đã có điện vào hay chưa. Tiếp đến, mở thùng máy ra và cắm lại các dây dẫn từ nguồn vào mainboard và các thiết bị khác, sau đó thử khởi động, nếu không thấy đèn sáng hoặc quạt nguồn không quay thì có thể bộ nguồn đã hỏng và cần được thay thế. Thường thì các bộ nguồn đều có cầu chì nên nếu may mắn bạn chỉ cần thay cầu chì của nguồn là được, tất nhiên để tự thay cầu chì cho nguồn bạn cũng cần có chút kinh nghiệm sử dụng mỏ hàn vì cầu chì được hàn trực tiếp lên bo mạch nguồn.



Dùng mỏ hàn nhiệt thay cầu chì bị đứt bằng 1 cái khác hoặc dùng 1 sợi dây đồng mảnh nối tắt 2 đầu (cách này hơi nguy hiểm).

2. Kiểm tra màn hình và card đồ họa


Sau khi chắc chắn là nguồn vẫn hoạt động bình thường mà khi khởi động màn hình vẫn không hiển thị gì thì bạn cần kiểm tra màn hình và Card màn hình.



Trước tiên vẫn là dây nguồn màn hình (khi có điện đèn led nhỏ ở góc màn hình sẽ sáng) rồi tới cáp nối VGA/DVI, nếu được hãy mượn một màn hình khác thử nghiệm để xem có phải màn hình bị hỏng không. Nếu vẫn không mang lại kết quả thì cần xem xét tới card đồ họa. Bạn có thể thử một số cách như tháo card ra rồi cắm lại, chuyển sang chip đồ họa tích hợp (nếu mainboard có hỗ trợ) hoặc thay thế bằng một card đồ họa khác.


Cáp VGA nối giữa Card màn hình và màn hình bị hỏng cũng là nguyên nhân khiến màn hình không không hiển thị được hình ảnh.

3. Lỗi RAM


Sau khi kiểm tra hết vấn đề về nguồn và màn hình mà vẫn không tìm ra nguyên nhân gây lỗi, thì thiết bị kế tiếp bạn cần kiểm tra chính là bộ nhớ của máy.


Tất cả những gì bạn có thể làm với RAM chỉ là tháo ra lau chùi và lắp lại.

RAM cũng là một nguyên nhân phổ biến khiến máy tính gặp trục trặc. Có thể chân cắm RAM bị lỏng (máy sẽ kếu bíp ngắn và lặp lại liên tục hoặc không có tiếng bíp khi khởi động), bạn chỉ việc tháo ra và cắm lại (thử cắm vào khe khác nếu vẫn không khắc phục được), đảm bảo lau sạch chân cắm RAM.Gắn lại thanh RAM một cách cẩn thận bằng cách ấn từ từ hai đầu thanh RAM xuống khe cắm tới khi 2 lẫy khớp vào 2 bên thanh RAM là được. Lưu ý RAM chỉ có một hướng cắm duy nhất nếu ngược sẽ không thể cắm được.

Nếu vẫn không được thì bạn có thể thử thay từng thanh RAM bằng một thanh khác mà bạn chắc chắn là vẫn hoạt động tốt để xem nguyên nhân có phải do RAM hay không.


4. Ổ Cứng


Nếu màn hình BIOS vẫn hiển thị khi khởi động nhưng chỉ dừng ở đó và không thể vào được Windows thì có thể vấn đề do ổ cứng. Khi máy vừa khởi động, nếu để ý kĩ sẽ nghe thấy tiếng lạch cạch nhỏ (tiếng đầu đọc di chuyển về vị trí cao nhất) hoặc bạn có thể sờ bằng tay xem ổ cứng có rung hay không, nếu không thì cần xem lại nguồn cấp cho HDD để đảm bảo ổ cứng vẫn hoạt động. Nếu ổ cứng vẫn quay nhưng vẫn không vào được Windows thì trường hợp này có thể do Virus gây ảnh hưởng đến file hệ thống của bạn, vấn đề về phần mềm xin không bàn đến trong bài này. Nếu như xem màn hình BIOS không thấy tên ổ cứng hiện lên nghĩa là ổ cứng đã hỏng và cần thay thế.


Ổ cứng cơ khi khởi động đầu đọc sẽ quét nhanh về vị trí trong cùng gây ra tiếng lạch cạch khi khởi động.

Tất nhiên những mẹo kiểm tra ổ cứng có hoạt động hay không chỉ áp dụng với ổ cứng cơ thông thường, không áp dụng với ổ SSD vì đơn giản là ổ SSD không có động cơ.

Qua các bước kiểm tra ở trên mà vẫn không tìm ra nguyên nhân lỗi thì rất có thể Main hoặc Chip của bạn có vấn đề. Khả năng Main bị lỗi thường cao hơn do CPU ít khi hỏng (trừ khi bạn ép xung thường xuyên) nên nếu có điều kiện bạn có thể thay CPU khác để thử. Tuy nhiên lời khuyên tốt nhất cho bạn nếu có ý định thay Mainboard là nên thay cả cây mới nếu dàn máy của bạn đã “có tuổi” vì linh kiện cũ dù sao cũng khó tương thích với Main mới vả lại giá thành cho đồ cũ tốc độ thấp cũng không kém gì đồ mới với tốc độ cao hơn rất nhiều.


Tham khảo: PC World

Thứ Sáu

Bạn làm gì khi bị Hack Email?

Bạn có bao giờ bạn đang tham gia vào công việc quảng cáo cho ai đó? Bạn có bao giờ nhận được email gửi đến với nội dung quảng cáo? Khi bạn click vào đường link quảng cáo đó, có thể bạn sẽ vô tình tham gia vào mạng lưới quảng cáo miễn phí cho nhà quảng cáo mà bạn không thể nào hình dung nổi.
 
 
Cách thức rất đơn giản, đường link đó có thể chứa mã độc, khiến cho hộp thư của bạn phải liên tục hoặc thường xuyên gửi thư đến danh sách địa chỉ liên lạc với nội dung tương tự hoặc nội dung quảng cáo bất kỳ do nhà quảng cáo quyết định. Vậy làm cách nào để ngăn chặn?
 


Như bạn có thể đã đoán ra, tài khoản e-mail của bạn đã bị hack ... Điều đó chắc chắn sẽ khiến cho bạn cảm thấy vô cùng khó chịu. Có lẽ bạn đang tự hỏi làm thế nào nó có thể xảy ra, làm thế nào dữ liệu của bạn  bị ảnh hưởng và quan trọng nhất là làm thế nào để ngăn chặn các hacker. Điều đầu tiên cần lưu ý là việc tấn công có thể xảy ra cho bất cứ ai. Trong khi bạn có thể tránh được phần lớn các nỗ lực hack bằng cách xóa các e-mail từ những người gửi không rõ ràng và không mở file đính kèm lạ, tất cả mọi thứ đều dễ bị hack. Vậy làm thế nào để đối phó tình huống đó?


Bước 1: Thay đổi mật khẩu E-mail
 

Ngay khi bạn phát hiện bạn đã bị hack, đăng nhập vào tài khoản e-mail và thiết lập lại mật khẩu mới hoàn toàn. Xác nhận quá trình thay đổi mật khẩu sẽ phụ thuộc vào nhà cung cấp dịch vụ e-mail của bạn, nhưng lựa chọn thường là trong các thiết lập e-mail. Bạn chọn mật khẩu có thể dễ nhớ, nhưng làm sao những người khác không thể nào đoán ra một cách dễ dàng được.

Bước 2: Thông báo cho tất cả mọi người trong danh sách liên lạc 
 

Gửi e-mail đến tất cả mọi người trong danh sách liên lạc của bạn hoặc sổ địa chỉ và thông báo cho họ rằng bạn đã bị hack. Cảnh báo họ không bấm vào bất kỳ liên kết trong e-mail bạn gửi hoặc mở bất kỳ file đính kèm. Thay vì gửi e-mail, bạn có thể sẽ mất thời gian nếu bạn có rất nhiều địa chỉ liên lạc, bạn nên nhóm e-mail lại thành nhiều nhóm để dễ quản lý, gõ địa chỉ e-mail(hay tên nhóm email) vào trường To(Đến), lời khuyên nên nhập tất cả các địa chỉ liên lạc vào trong trường BCC. BCC, là viết tắt của 'bản sao ẩn’, cho phép bạn gửi một e-mail tới nhiều người mà không có người nhận nào có thể nhìn thấy người nào khác ngoài bạn đã gửi nó.
 

 

Bước 3: Xóa Cache & Cookies
 

Khi bạn đã kiểm soát được các thiệt hại gây ra, bạn nên kiểm tra bộ nhớ cache của trình duyệt Internet của bạn và xóa bất kỳ tập tin cookie trên máy tính của bạn. Cache là một thư mục, là nơi các tập tin Internet tạm thời được lưu trữ. Nếu bạn không chắc chắn nơi để tìm bộ nhớ cache trên trình duyệt của bạn, hãy thử gõ bộ nhớ cache trong trình đơn trợ giúp từ trình duyệt của bạn hoặc nhấn tổ hợp phím cửa sổ + R(Mở hộp thoại RUN) và gõ ‘%temp%’, rồi xóa tất cả các tệp tin tạm. Cookies là các tập tin văn bản nhỏ có chứa thông tin về miền cụ thể .
 
 
Những tập tin này được lưu trữ trên ổ cứng của bạn và được gọi  khi bạn truy cập vào tên miền của Cookie. Bạn thường sẽ tìm thấy các nút này để xóa các tập tin cookie trong menu tương tự như thiết lập bộ nhớ cache, nhưng nếu bạn không thể xác định vị trí, tìm kiếm trình đơn trong trợ giúp trình duyệt của bạn. Hoặc vào Tool> Option> Security> Delete cookies…

 

Bước 4: Quét virus 

Kích hoạt chương trình chống virus trên máy tính của bạn và kiểm tra xem có vấn đề nào không . Nếu bạn không cập nhật phần mềm diệt virus thường xuyên, bạn nên cập nhật trước khi quét virus. Cập nhật phần mềm cho phép nó dễ dàng phát hiện các virus mới nhất và phần mềm mã độc hại. Nếu máy tính của bạn không có phần mềm chống virus, bạn nên cài đặt nó. Bạn có thể phải đối mặt với mất mát dữ liệu, e-mail hacking hoặc đánh cắp thông tin nếu bạn không có một chương trình chống virus nào chạy trên máy tính của bạn.


Bước 5: Kiểm tra E-mail
 

Nếu bạn muốn chắc chắn rằng bạn đã giải quyết được các vấn đề đó, tạo ra một liên hệ mới với một địa chỉ e-mail ở trên cùng của bảng chữ cái, chẳng hạn như abc@abc.com . Nếu máy tính của bạn vẫn còn bị nhiễm virus, bạn sẽ nhận được thông báo khi e-mail được gửi đến địa chỉ trên. Nếu bạn nhận được thông báo, lặp lại các bước trên. Hãy chắc chắn rằng bạn đã cài đặt chương trình chống virus mới nhất hoặc chuyển sang chương trình chống virus khác nếu vấn đề vẫn còn. 
 
NHẬT QUANG, XHTT

Công ty Seo Vinalink tư vấn Seo tổng thể website

Đặc điểm của Seo tổng thể khác với Seo từ khóa cụ thể đó là Seo tổng thể không cam kết một vài từ khóa HOT lên top mà chỉ cam kết Traffic và lợi ích đem lại cho website từ Google search (Thông qua các từ khóa dài nhưng trị giá chuyển đổi khách hàng cao). Theo khảo sát thì các từ khóa dài sẽ đem lại 70% traffic so với 30% traffic của vài từ khóa TOP và tỷ lệ chuyển đổi của từ khóa dài trị giá gấp 4 lần từ khóa ngắn.

Seo tổng thể có một đặc điểm đặc biệt nữa là khi Seo cần phải có sự phối hợp triển khai giữa cả công ty Seo và phía khách hàng đang phát triển website, nếu thiếu một trong hai bên thì chiến lược Seo tổng thể sẽ không thể đạt theo ý muốn.
Vinalink Seo cung cấp dịch vụ Seo tổng thể như sau :
Bước 1 : Tiến hành SEO audit đánh giá hiện trạng website và phân tích 10 đối tủ cạnh tranh (7 ngày) và phân tích thị trường, khách hàng, lập kế hoạch online marketing ngắn và dài hạn, xác định mục tiêu chiến dịch, phương pháp đo lường, chọn lựa  phương pháp đo lường hiệu quả
Bước 2
: Lên phương án từ khóa cho Adwords và thực hiện quản lý Adwords campaign + Booking media khác theo yêu cầu của khách đối với khách hàng cần kết quả lên top ngay trong khi chờ đợi kết quả SEO tổng thể (Từ 3 -6 tháng mới có kết quả)
Bước 3 : Đồng thời lên phương án onpage, Seo từ khóa lên top dần thay thế adwords, thực hiện Seo tổng thể, có thể triển khai thêm các kênh khác như Social media marketing, Viral marketing… tùy yêu cầu.
Bước 4 : Tích hợp CRM và công cụ đo lường chiến dịch như traffic, Thu thập thông tin khách hàng, số lượng deals , lập báo cáo ROI cho khách hàng
Nguồn: thietke.websites

Dùng QR code để quảng bá web

Mã QR là một mã ma trận (hay mã vạch hai chiều) được phát triển bởi công ty Denso Wave (Nhật Bản) vào năm 1994. Chữ “QR” xuất phát từ “Quick Response”, trong tiếng Anh có nghĩa là đáp ứng nhanh, vì người tạo ra nó có ý định cho phép mã được giải mã ở tốc độ cao. Các mã QR được sử dụng phổ biến nhất ở Nhật Bản, và hiện là loại mã hai chiều thông dụng nhất ở Nhật Bản.
Tổng quan
Mặc dù ban đầu được dùng cho việc theo dõi các thành phần trong qui trình sản xuất xe hơi, QR Code ngày nay được sử dụng cho mục đích rộng hơn nhiều, cả trong các hệ thống thương mại lẫn tiện ích cá nhân (mobile tagging). Hiện nay hàng trăm triệu thiết bị Mobile trên TG đã dùng QR Code. QR Code lưu trữ một địa chỉ hay đừơng link. Nó có thể xuất hiện ở mọi nơi: trên tạp chí, bảng hiệu, xe bus, danh thiếp hay bất cứ thứ gì người dùng cần biết thông tin. Người dùng với một điện thọai chụp ảnh đi kèm là một phân mềm đọc barcode đúng chuẩn sẽ có thể quét qua hình ảnh và trình duyệt web trên máy sẽ vào ngay link vừa tìm được.
Hiện nay, QR Code được Google (www.google.com) bảo trợ và phát triển, trở thành chuẩn hoàn toàn mở khác với trước đây. QR Code ngày càng xuất hiện nhiều trên các sản phẩm và dịch vụ của Google như Google Chart hay Google Map.
QR code của Vinalink.com – Bạn dùng thiết bị Mobile hay thiết bị đọc PR code nó tự động mở trình duyệt và browse website Vinalink.com
Website để tạo QR code và đọc online QR code:
Tạo QR Code: http://zxing.appspot.com/generator & http://qrcode.kaywa.com/
Đọc online: http://zxing.org/w/decode.jspx
Các ứng dụng đọc QR Code trên các dòng hệ điều hành di động:
Quickmark 2D Barcode Reader v3.8: Đây là ứng dụng đọc Barcode có mặt trên hầu hết các hệ điều hành di động bao gồm Symbian, Iphone OS, Windows Mobile và cả Android. Các bạn có thể đăng ký miễn phí và chọn dòng máy của mình rổi download  tại đây.
Các website cho tạo QR code : Delivr, Kaywa, Qurify, Kerem Erkan, uQR.me, Dynotag, BeQRious and Jump Scan
Đọc QR code online : Qrafter, I-Nigma, Optiscan, QuickMark, QR app and ScanLife
Giá trị cho các nhà tiếp thị là gì?
Ngay bây giờ, khả năng là không giới hạn, đó là lý do tại sao các nhà bán lẻ hàng đầu như ba đề cập ở trên là lợi dụng cơ hội này để ngay lập tức kết nối với hàng triệu khách hàng điện thoại di động. Cho dù các mã QR được đặt trên một quảng cáo in, một sản phẩm vật lý hoặc phân phối thông qua các hình thức khác nhau của các phương tiện truyền thông kỹ thuật số, mã đảm bảo thời gian thực truy cập cho người sử dụng điện thoại di động với thông điệp tiếp thị của sự lựa chọn một chủ doanh nghiệp. Các thông điệp này có thể bao gồm các thông báo của một cung cấp thời gian nhạy cảm, thông báo của một cuộc thi Facebook mới hoặc một video YouTube, một cảnh báo cho một sản phẩm rất được mong đợi chỉ nhận được hoặc cập nhật một giờ nghỉ sửa đổi của cửa hàng hoạt động.
Nguồn: thietke.websites

Gửi email ‘nặc danh’ với dịch vụ AnonEmail

Vì lý do nào đó, nếu bạn cần gửi một email ‘nặc danh’, cách tốt nhất là thông qua những dịch vụ email miễn phí như AnonEmail của AnonyMouse.org.
Cách tiến hành vô cùng đơn giản, đầu tiên bạn nhập địa chỉ email của người nhận vào ô To:
Tiếp theo, gõ chủ đề cho bức thư của bạn vào ô Subject:
Bạn viết nội dung email trong hộp Message với độ dài không giới hạn:
Cuối cùng, bạn nhấn Send Anonymously:
Một thông báo xuất hiện nêu rõ email của bạn đã được gửi đi  nhưng để đảm bảo vấn đề bảo mật, thời điểm gửi email có thể trì hoãn đến 12 giờ sau. Bằng cách này, không ai có thể theo dấu bức thư để trở về thời điểm khi bạn đang ngồi ở máy tính.
AnonEmail sau đó sẽ gửi đi email của bạn thông qua một trong số các remailer của nó, giúp cho email rất khó bị theo dõi. Lưu ý rằng máy tính mà bạn dùng để gửi email có thể lưu lại lịch sử duyệt web của bạn, vì thế nhớ xóa đi ngay sau khi bạn hoàn tất công việc.
Ngoài ra, AnonyMouse.org còn cung cấp thêm một tính năng thiết thực khác là duyệt web ẩn danh AnonWWW, cho phép bạn lướt web tự do mà không để lộ bất cứ thông tin cá nhân nào của bạn.
(XHTT.com.vn)

Thứ Tư

Lập trình với Kinect .NET SDK


Kinect đánh dấu thời kì chơi game tương tác, cho người chơi cảm giác như thật. Với những người lập trình, câu hỏi đặt ra là: "Làm sao để làm được điều đó"? Và điều này dễ dàng hơn khi Microsoft ra mắt thư viện Kinect .NET SDK. Bài viết giới thiệu các bạn làm quen với thư viện SDK.
 
I. Khởi động 
Để làm việc với Kinect .NET SDK chúng ta bắt buộc phải có môi trường làm việc như sau:

Hệ điều hành: Windows 7 (32bit hoặc 64 bit).

Phần cứng: Cấu hình máy tính với CPU dual-core, 2,66GHz trở lên; card màn hình hỗ trợ Microsoft DirectX 9.0c; RAM tối thiểu 2GB; Quan trọng nhất là thiết bị Kinect.

Phần mềm: Microsoft Visual Studio 2010 Express hoặc các phiên bản khác của Visual Studio 2010, tải tại địa chỉ http://www.microsoft.com/visualstudio/en-us; Microsoft .NET Framework 4.0 sẽ được cài đặt khi cài VS 2010; Kinect .NET SDK Beta, tải tại địa chỉ http://research.microsoft.com/en-us/um/redmond/projects/kinectsdk/download.aspx.

II. Bước 2: Nhập cuộc
Bước tiếp theo chúng ta tạo một project để bắt đầu lập trình cho thiết bị Kinect. Bạn có thể tạo project theo dạng mà bạn thích: Windows Form, WPF… Tuy nhiên chúng tôi khuyên bạn nên sử dụng WPF để xử lí hình ảnh tốt hơn. Trong bài viết này chúng tôi tạo project theo dạng WPF.

Trong bài viết này chúng tôi cũng mặc định các bạn đã biết lập trình trên nền WPF nên chúng tôi chỉ tập trung vào cách khai thác thư viện Kinect .NET SDK.

Để sử dụng thư viện Kinect .NET SDK, chúng ta Add reference đến Microsoft.Research.Kinect.Nui ở thư mục C:\Program Files (x86)\Microsoft Research KinectSDK hoặc C:\Program Files\Microsoft Research KinectSDK
Sau khi đã Add reference thành công, chúng ta bắt tay vào khởi động và tắt thiết bị Kinect.

Khởi động thiết bị

Trước hết chúng ta khai báo đối tượng Runtime, đối tượng này là đại diện cho thiết bị Kinect

Runtime kinect = new Runtime();

Đối tượng Runtime thuộc namespace Microsoft.Research.Kinect.Nui do đó trước khi sử dụng chúng ta phải khai báo:
using Microsoft.Research.Kinect.Nui;
Sau đó tiến hành khởi tạo thiết bị với các thông số khởi tạo:

kinect.Initialize(RuntimeOptions.UseColor)

Có nhiều tùy chọn khởi tạo, tùy vào mục đích sử dụng mà chúng ta lựa chọn những thông số cho phù hợp:

RuntimeOptions.UseDepth: Khởi tạo thiết bị để lấy theo độ sâu

RuntimeOptions.UseSkeletalTracking: khởi tạo thiết bị để theo dõi hoạt động cử chỉ của người

RuntimeOptions.UseDepthAndPlayerIndex: khởi tạo thiết bị cho phép nhận dạng nhiều nhân vật.

Các thông số này có thể kết hợp với nhau bằng toán tử ( | )

kinect.Initialize(RuntimeOptions.UseColor | RuntimeOptions.UseDepth | RuntimeOptions.UseSkeletalTracking | RuntimeOptions.UseDepthAndPlayerIndex);
Tắt thiết bị
 
Như vậy là thiết bị đã sẵn sàng cho chúng ta khai thác. Sau khi sử dụng xong, chúng ta tắt thiết bị bằng phương thức:
kinect.Uninitialize();
Tóm lại, để sử dụng và tắt thiết bị Kinect chúng ta thực hiện các phương thức sau:
Runtime kinect;
private void InitKinectDevice()
{
kinect = new Runtime();
kinect.Initialize(RuntimeOptions.UseColor| RuntimeOptions.UseDepth|
RuntimeOptions.UseSkeletalTracking | RuntimeOptions.UseDepthAndPlayerIndex);
}
private void ShutdownKinectDevice()
{
kinect.Uninitialize();
}
III. Thao tác với camera
  
Dạng chiều sâuDạng ảnh màu bình thường
Có hai việc mà chúng ta có thể làm được với Camera:

- Lấy hình ảnh ghi nhận được

- Điều khiển hướng quay.

1. Lấy hình ảnh ghi nhận được

Camera của Kinect hỗ trợ chúng ta lấy 2 dạng hình ảnh từ camera: hình ảnh màu bình thường và hình ảnh dạng chiều sâu.

Để lấy hình ảnh chúng ta cần làm những công đoạn sau:

• Mở camera với chế độ cần lấy hình ảnh

//Mở camera với chế độ màu bình thường

kinect.VideoStream.Open(ImageStreamType.Video, 2,ImageResolution.Resolution640x480, ImageType.ColorYuv);
//Mở camera với chế độ nhìn theo chiều sâu

kinect.DepthStream.Open(ImageStreamType.Depth, 2,

ImageResolution.Resolution320x240,ImageType.DepthAndPlayerIndex);

Tùy theo mục đích sử dụng mà chúng ta mở một trong 2 phương thức trên hoặc mở cả hai chế độ.
• Hiển thị hình ảnh ghi nhận được

Để hình ảnh ghi nhận được hiển thị một cách liên tục, thư viện Microsoft .NET SDK hỗ trợ 2 hàm sự kiện để lấy hình ảnh từ camera. Sự kiện này sẽ được thực hiện khi camera ghi nhận được hình ảnh.
// sự kiện lấy hình ảnh dạng màu bình thường

kinect.VideoFrameReady += new EventHandler<ImageFrameReadyEventArgs>(KinectVideoFrameReady);
// sự kiện lấy hình ảnh dạng chiều sâu

kinect.DepthFrameReady += new EventHandler<ImageFrameReadyEventArgs>(KinectDepthFrameReady);

Hình ảnh ghi nhận được sẽ được hiển thị lên control Image có tên là videoColor và depthVideo

void KinectVideoFrameReady(object sender,ImageFrameReadyEventArgs e)
{
PlanarImage Image = e.ImageFrame.Image;
videoColor.Source = BitmapSource.Create(Image.Width, Image.Height, 96, 96, PixelFormats.Bgr32,null, Image.Bits, Image.Width * Image.BytesPerPixel);
}
void KinectDepthFrameReady(object sender, ImageFrameReadyEventArgs e)
{
PlanarImage Image = e.ImageFrame.Image;
byte[] convertedDepthFrame = convertDepthFrame( Image .Bits);
depth.Source = BitmapSource.Create(Image.Width, Image.Height,96,96,PixelFormats.Bgr32, null, convertedDepthFrame, Image.Width * 4);
}
2. Điều khiển hướng quay của thiết bị Kinect
Camera hướng lênCamera hướng xuống
Điều khiển hướng quay của thiết bị Kinect được điều khiển bởi thuộc tính ElevationAngle trong đối tượng camera.
Khởi tạo đối tượng:

Camera cam= kinect. NuiCamera

Cho camera hướng lên:

cam.ElevationAngle = camElevation Angle +5;

Cho camera hướng xuống:

cam.ElevationAngle = camElevation Angle -5;

Lưu ý là góc quay của camera chỉ là +25 và -25 thôi. Vượt ra khỏi giới hạn này thì sẽ bị lỗi.

private void btnUp_Click(object sender, RoutedEventArgs e)
{
cam.ElevationAngle += 5;
}
private void btnDown_Click(object sender, RoutedEventArgs e)
{
cam.ElevationAngle += -5;
}
IV. Bước 4: Nhận dạng cử động của con người

Để người chơi có thể chơi game dựa vào động tác thì chương trình game phải bắt được từng cử động của cơ thể. Và để làm điều này thì rất… dễ khi có sự hỗ trợ của thư viện Kinect .NET SDK. Thư viện hỗ trợ chúng ta lấy được 20 điểm khớp chuyển động trên cơ thể mình mà Microsoft gọi đó là các điểm Joint.

HipCenter, Spine, ShoulderCenter, Head, ShoulderLeft, ElbowLeft, WristLeft, HandLeft, ShoulderRight, ElbowRight, WristRight, HandRight, HipLeft, KneeLeft, AnkleLeft, FootLeft, HipRight, KneeRight, AnkleRight,FootRight, Count
Khung xương
Hiện tại, SDK chỉ mới hỗ trợ cho chúng ta nhận dạng được cử động của 2 người chơi. Hi vọng phiên bản chính thức sẽ hỗ trợ nhiều hơn.

Để làm được điều này, đơn giản bạn chỉ cần làm theo các bước sau:

Khai báo hàm sự kiện phát sinh khi SDK phân tích được chuyển động của người chơi, hàm này thường được khai báo cùng việc InitKinectDevice
kinect.SkeletonFrameReady += new
EventHandler<SkeletonFrameReadyEventArgs>(SkeletonFrameReady);

Lấy danh sách tọa độ các khớp chuyển động của người chơi thông qua thuộc tính SkeletonFrameReadyEventArgs.SkeletonFrame.Skeletons. Như đã nói ở trên các điểm này được trả ra dưới dạng các Joint, do đó để lấy được tọa độ x, y trên màn hình ta cần phải có hàm chuyển đối.

private Point getDisplayPosition(Joint joint)
{
float depthX, depthY;
nui.SkeletonEngine.SkeletonToDep thImage(joint.Position, out depthX, out depthY);
//đổi sang hệ quy chiếu tọa độ 320x240
depthX = Math.Max(0, Math.Min( depthX * 320, 320));
depthY = Math.Max(0, Math.Min(
depthY * 240, 240));
int colorX, colorY;
ImageViewArea iv = new ImageVie wArea();

nui.NuiCamera.GetColorPixelCoordinatesFromDepthPixel(ImageResolution.Resolution640x480, iv, (int)depthX, (int)depthY, (short)0, out colorX, out colorY);

return new Point((int)(skeleton.Width * colorX / 640.0), (int)(skeleton.Height * colorY / 480));
}
void kinect_SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e)
{
SkeletonFrame skeletonFrame = e.SkeletonFrame;
skeleton.Children.Clear();
foreach (SkeletonData data in skeletonFrame.Skeletons)
{
if (SkeletonTrackingState.Tracked == data.Tracking
State)
{
// Draw bones
Brush brush = new SolidColorBrush(Color.FromRgb(255, 0, 0));
skeleton.Children.Add(getBodySegment(data.Joints, brush, JointID.HipCenter, JointID.Spine, JointID.ShoulderCenter, JointID.Head));
skeleton.Children.Add(getBodySegment(data.Joints, brush, JointID.ShoulderCenter, JointID.ShoulderLeft, JointID.ElbowLeft, JointID.WristLeft, JointID.HandLeft));
 
skeleton.Children.Add(getBodySegment(data.Joints, brush, JointID.ShoulderCenter, JointID.ShoulderRight, JointID.ElbowRight, JointID.WristRight, JointID.HandRight));

skeleton.Children.Add(getBodySegment(data.Joints, brush, JointID.HipCenter, JointID.HipLeft, JointID.KneeLeft, JointID.AnkleLeft, JointID.FootLeft));
skeleton.Children.Add(getBodySegment(data.Joints, brush, JointID.HipCenter, JointID.HipRight, JointID.KneeRight, JointID.AnkleRight, JointID.FootRight));
//Draw joints
foreach (Joint joint in data.Joints)
{
Point jointPos = getDisplayPosition(joint);
Line jointLine = new Line();
jointLine.X1 = jointPos.X - 3;
jointLine.X2 = jointLine.X1 + 6;
jointLine.Y1 = jointLine.Y2 = jointPos.Y;
jointLine.Stroke = new SolidColorBrush(Color.FromRgb (0, 255, 0));
jointLine.StrokeThickness = 6;
skeleton.Children.Add(jointLine);
}
}
}
}
V. Kết luận
Như vậy qua bài này chúng ta đã biết cách lấy hình ảnh ghi nhận được từ camera, điều khiển góc quay, và quan trọng nhất là lấy được tọa độ các khớp chuyển động của nhân vật. Ví dụ như lấy được tọa độ của bàn tay, của đầu, chân, hông. Từ đây chúng ta có thể tạo ra những game dựa vào cử chỉ của người chơi và để điều khiển nhân vật trong game.

Hãy tưởng tưởng một ngày nào đó chúng ta chơi trò Audition thay vì gõ bàn phím, chúng ta sẽ nhảy theo điệu nhạc của nhân vật trên game. Hoặc chúng ta có thể điều khiển máy tính từ xa, giả lập màn hình cảm ứng với Kinect… Vô số ứng dụng dạng tương tác (Interactive Application) cho chúng ta khai thác với thiết bị Kinect.

Email: nguyentankhtn@gmail.com

Thứ Hai

Facebook ngưng "theo dõi" người dùng

Hứng chịu “búa rìu dư luận” vì cho phép những cookie có chức năng theo dõi trình duyệt và vẫn hoạt động ngay cả khi người dùng đã thoát (log-out) khỏi mạng xã hội, Facebook đã nhận trách nhiệm và cho biết mọi thứ đã được khắc phục.
>>> Facebook cũng làm gián điệp theo dõi người dùng?


Facebook đang theo dõi chúng ta? 
(Ảnh minh họa: Internet)
Vụ việc rõ ràng đã như đổ dầu vào ngọn lửa vốn đã luôn âm ỉ về khả năng đảm bảo riêng tư và bảo mật trong chính sách hoạt động của mạng xã hội lớn nhất hành tinh.
Ngọn nguồn vụ việc

Blogger Úc Nik Cubrilovic là người đầu tiên lên tiếng về việc các cookie (được Facebook để lại trong máy) vẫn tiếp tục hoạt động ngay cả khi anh đã hoàn toàn đăng xuất khỏi mạng xã hội.
Cubrilovic cho hay anh đã liên lạc với Facebook khi phát hiện ra điều này, nhưng không nhận được bất cứ phản hồi nào. Tin tức về sự việc chỉ lên nhanh sau khi Cubrilovic đăng tải câu chuyện lên blog cá nhân.
Đại diện Facebook sau đó đã lên tiếng, cho biết họ sẽ khắc phục lỗi sớm cũng như chấm dứt việc thu thập thông tin sau khi người dùng đã ngừng sử dụng dịch vụ.
Lo lắng chưa tan

Theo Cubrilovic, cookie nguy hiểm nhất của vụ việc có tên “a_user”, vốn có nhiệm vụ nắm giữ ID của người dùng chiếc máy tính chứa cookie này. Đại diện Facebook cho biết đã có một lỗi gây ra việc cookie a_user không bị xóa sau khi người dùng đăng xuất, và sẽ khắc phục lỗ hổng này trong thời gian sớm nhất.
Tiếp đó, mạng xã hội của Mark Zuckerberg cho hay việc có một số “thứ hay ho” sót lại sau khi người dùng đã ngưng sử dụng dịch vụ cũng nhằm phục vụ cho việc phát hiện những hoạt động đăng nhập có dấu hiệu đáng ngờ, và bảo vệ tài khoản người dùng mỗi khi họ đăng nhập tại các máy tính công cộng.
Tuy nhiên, cá nhân Cubrilovic vẫn khuyến cáo người dùng nên xóa cookie (thủ công) sau mỗi lần đăng xuất Facebook, hoặc sử dụng một trình duyệt riêng biệt dành riêng cho việc sử dụng mạng xã hội. Anh cho rằng có thể lý do Facebook đưa ra là đúng trên một chừng mực nào đó, song không thể biện hộ cho việc đi “quá đà” khỏi những ranh giới pháp lý về bảo mật do chính công ty này đặt ra.
Lần gần đây nhất Facebook chạm phải những phản ứng tiêu cực từ phía cộng đồng sử dụng là vụ việc với chức năng tự động nhận diện và tag (tạm dịch: đánh dấu) ảnh người dùng, bất kể họ muốn hay không. Sau khi thừa nhận tính năng mới gây nhiều phiền toái hơn là tiện dụng, và xa hơn là có khả năng gây nguy hiểm đến sự bảo mật của người sử dụng, Facebook đã phải vô hiệu hóa tính năng tự động nhận diện và tag ảnh người dùng.
Hãy tưởng tượng nếu một ai đó thích bạn và tìm cách chụp lén ảnh, sau đó tải lên Facebook, lập tức mạng xã hội sẽ tự động dò tìm chủ nhân của bức ảnh, tag, cũng đồng nghĩa với việc người đã chụp bức ảnh kia lập tức sẽ có trong tay mọi thông tin về bạn, mặc dù bạn không biết gì về “người bạn lạ mặt” này.
Để tránh xảy ra tình huống đáng sợ này, người dùng nên thực hiện một thao tác nhỏ, để chủ động hơn trong việc bảo vệ sự riêng tư của mình:
Chọn mục Account (tài khoản) ở góc trên cùng bên phải, rồi chọn Privacy Settings (thiết lập riêng tư), trong Privacy Settings, chọn tiếp Customize Settings (tinh chỉnh thiết lập).
Tại đây, bạn sẽ nhìn thấy lựa chọn mang tên Suggest photos of me to friends (gợi ý hình ảnh của tôi đến bạn bè) trong phần Things others share (Những điều người khác chia sẻ). Hãy vô hiệu hóa lựa chọn này và bạn đã an toàn trong việc bảo vệ quyền riêng tư của mình.

Theo TTO

Thứ Tư

Lập trình viết ứng dụng Facebook


Cảm giác của bạn thế nào khi nhìn thấy được “thành phẩm” của mình trên Facebook? Bài viết sẽ gợi ý cho bạn cách tạo một ứng dụng nhỏ trên Facebook.
Hiện tại, theo thống kê danh mục ứng dụng của Facebook có chứa khoảng hơn 550.000 ứng dụng. Bạn muốn “nhúng” những bài trình bày trong hồ sơ Facebook của mình hay muốn chia sẻ những quyển sách và bộ phim yêu thích với bạn bè, hay chỉ muốn chơi một số trò chơi với những thành viên "không quen" khác trên Facebook. Tất cả điều nói trên sẽ được các ứng dụng hiện có trên Facebook đáp ứng cho bạn. Tuy nhiên, nếu bạn không thích dùng những ứng dụng được “dọn sẵn” và không muốn nhìn thấy những thương hiệu của hãng thứ 3 hay các mẫu quảng cáo, thì bạn có thể tự phát triển ứng dụng Facebook theo cách riêng. 
Dưới đây sẽ là một số bước để giúp bạn tạo ra ứng dụng nhỏ trên Facebook theo ý muốn; đây chỉ là những ví dụ đơn giản về viết ứng dụng Facebook dùng code HTML và ASP.Net.
Để viết ứng dụng Facebook, bạn cần một số kiến thức về các ngôn ngữ lập trình web và cần biết một số máy chủ (web server) cho phép bạn có thể đặt ứng dụng Facebook lên đó.
1. Ứng dụng Facebook dùng code HTML
Bước 1: Giả sử bạn đã có tài khoản trên Facebook, thêm ứng dụng Developer (https://www.facebook.com/developers/) vào hồ sơ Facebook của bạn, sau đó nhấn “Set Up New App”.
Bước 2: Bạn đặt tên cho ứng dụng Facebook, đồng ý với những điều khoản trên Facebook.

Tiếp tục nhập mã bảo vệ, sau đó bạn có thể tải lên một số hình ảnh để chọn làm biểu tượng (logo) cho ứng dụng của bạn.
Bước 3: Bạn có thể dùng công cụ trình biên tập WYSIWYG HTML hay notepad, để ghi nội dung bạn muốn hiển thị bên trong ứng dụng Facebook. Trong ví dụ này sẽ thiết lập ứng dụng máy tính điện tử (calculator).
<html>
<head>
<title>PC World VN Calculator by JavaScript</title>
<script type="text/javascript" src="calculate.js"></script>
</head>
<body>
<h1>PC World VN Calculator by JavaScript</h1>
<form name="calculator">
<table border="0" cellpadding="2" cellspacing="0" background="/images/background.jpg" width="233" height="259">
<tr><td align="center" style="padding-bottom:0px;padding-top:15px"><input type="text" name="win" value="0" style="height:30px;width:190px;text-align:right;font-size:20px;font-weight:bold;border:1px solid #666666;padding-right:2px;" maxlength='15'></td></tr>
<tr><td>
<table border="0" cellpadding="5" cellspacing="1" align="center">
<tr><td style="padding-top:0px"><input type="button" value="CE" style="width:40px" onClick="calc('CE')"></td>
<td style="padding-top:0px"><input type="button" value="C" style="width:40px" onClick="calc('C')"></td>
<td style="padding-top:0px"><input type="button" value="+/-" style="width:40px" onClick="calc('+/-')"></td>
<td style="padding-top:0px"><input type="button" value="%" style="width:40px" onClick="calc('%')"></td></tr>
<tr><td><input type="button" value="7" style="width:40px" onClick="calc('7')"></td>
<td><input type="button" value="8" style="width:40px" onClick="calc('8')"></td>
<td><input type="button" value="9" style="width:40px" onClick="calc('9')"></td>
<td><input type="button" value="/" style="width:40px" onClick="calc('/')"></td></tr>
<tr><td><input type="button" value="4" style="width:40px" onClick="calc('4')"></td>
<td><input type="button" value="5" style="width:40px" onClick="calc('5')"></td>
<td><input type="button" value="6" style="width:40px" onClick="calc('6')"></td>
<td><input type="button" value="x" style="width:40px" onClick="calc('*')"></td></tr>
<tr><td><input type="button" value="1" style="width:40px" onClick="calc('1')"></td>
<td><input type="button" value="2" style="width:40px" onClick="calc('2')"></td>
<td><input type="button" value="3" style="width:40px" onClick="calc('3')"></td>
<td><input type="button" value="-" style="width:40px" onClick="calc('-')"></td></tr>
<tr><td><input type="button" value="0" style="width:40px" onClick="calc('0')"></td>
<td><input type="button" value="." style="width:40px" onClick="calc('.')"></td>
<td><input type="button" value="=" style="width:40px" onClick="calc('=')"></td>
<td><input type="button" value="+" style="width:40px" onClick="calc('+')"></td></tr>
</table>
</td></tr>
</table>
</form>
</body>
</html>
Bước 4: Truy cập máy chủ web của bạn, tạo một thư mục con gọi là “facebook” và tải lên file code (index.php hay index.html) mà bạn đã tạo ở trên. Trong trường hợp này, ứng dụng được đặt trên máy chủ web www.thegioigame.vn.
Cavas Page: là đường dẫn URL cho ứng dụng (http://apps.facebook.com/tgvt_fb_app/).
Canvas URL: là nơi đặt dịch vụ web (web service) để lưu trữ ứng dụng sẽ được liên kết với Facebook (http://www.thegioigame.vn/facebook).
Hoàn tất xong bạn nhớ lưu lại các thao tác vừa làm. Bạn hãy quan tâm đến 2 khóa: API Key và App Secret, 2 khóa này cần khai báo trong ứng dụng khi có truy cập thư viện (API) của Facebook.  
Bước 5: Thành quả cuối cùng của bạn. Đó chính là ứng dụng của riêng bạn hiện đã có mặt trên Facebook.
Qua 5 bước này sẽ giúp bạn phần nào hình dung ra cách thức tạo một ứng dụng đơn giản trên Facebook. Các bạn cũng có thể tự tạo những ứng dụng khác theo sở thích và nhu cầu của riêng mình.
Từ ứng dụng đơn giản này, bạn cũng có thể xây dựng các ứng dụng có mức độ phức tạp hơn, chẳng hạn có kèm thêm RSS để cập nhật tin tức, chèn thêm các đoạn video clip… Hy vọng các bạn sẽ tạo được nhiều ứng dụng bổ ích và hữu dụng để chia sẻ cùng với bạn bè.
2. Ứng dụng Facebook với ASP.Net
Bước 1:
Đăng nhập vào facebook: https://www.facebook.com/
Vào phần phát triển ứng dụng: https://www.facebook.com/developers/ , nhấn nút “Set Up New App” để tạo ứng dụng mới.
Bước 2:
Điền tên ứng dụng và chọn đồng ý, nhấn nút khởi tạo.

Nhập mã xác nhận rồi submit.
Bước 3: 
Tab About: Có thể mô tả ứng dụng trong phần Description, chọn icon, logo cho ứng dụng…
Tab Facebook Integration
Application ID và Application Secret là 2 key của ứng dụng cho phép ta viết code truy xuất thông tin.
Canvas Page là trang ứng dụng facebook.
Canvas URL sẽ là trang ASP.Net mà ta viết code truy xuất thông tin.
Trong ví dụ này, mã lệnh (code) sẽ được đưa lên 1 host free http://phuonglam.somee.com. Các bạn có thể vào trang http://somee.com/ để đăng ký 1 host free để sử dụng, trang này hỗ trợ khá tốt ASP.Net tất cả framework, tuy nhiên trang hiển thị sẽ bị phần quảng cáo ở phía trên và dưới (chịu thôi, đồ “chùa” mà).
Hoàn tất, nhấn Save Changes

Đường dẫn của ứng dụng sẽ là: http://apps.facebook.com/pcwsample/
Bước 4:  
Download Starter Kit tích hợp vào Visual Studio.
Cài đặt Starter kit:
Bước 5:
Khởi chạy Visual Studio tạo website. Chọn Facebook Starter Kit v2.1

Bước 6: 
Code; chỉnh tập tin web.config các “key” cho đúng với ứng dụng Facebook đã tạo ban đầu.
 
Starter Kit sẽ tự tạo cho chúng ta trang Default.aspx có nội dung như hình vẽ:  
Ghi chú
Image1 hiện thị hình ảnh của người tạo ứng dụng.
Control FriendList1 sẽ liệt kê hình bạn bè của người tạo ứng dụng.
DropDownList1 thay đổi sẽ làm thay đổi Image2 hiển thị hình ảnh bạn trong danh sách bạn bè friend list.
Bước 7: 
Đưa website lên host free đã tạo.
Bước 8:
Chạy ứng dụng facebook: http://apps.facebook.com/pcwsample/ 
Hộp thoại Request for Permission hiện ra, chọn Allow.

Kết quả cuối cùng:

Chúc các bạn thành công! 
Nguồn pcworld.com.vn

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Blogger Templates