Tổng hợp tài liệu
Đọc thấy con raspberry hay quá, mới hốt về 1 con để test chơi. Mua con B+
Nó có thể tùy biến nhiều thứ, tuy nhiên cái mình mong muốn đạt đc là Home automation – điều khiển các thiết bị điện thông qua nó. Khi đã đk đc rồi thì vấn đề control by web hay smartphone có lẽ cũng ko khó lắm.
Tuy nhiên ta sẽ đi từng bước, làm những thứ mình biết trước.
Về ứng dụng raspberry pi, nhiều người sẽ dùng nó chạy XBMC, làm home theater. Vấn đề này đã có sẵn trong bộ NOOBS Setup
http://www.raspberrypi.org/help/noobs-setup/
Chỉ cần chạy OpenELEC hoặc RaspBMC là sẽ có nga 1 HD Player ngon lành cành đào. Chất lượng hình ảnh ăn đứt mấy con HD Player china mía.
Tuy nhiên để có đc sự tối ưu và sử dụng tốt nên tham khảo config : http://www.hdvietnam.com/diendan/22-hd-media-player/603405-hd-player-bang-raspberry.html
Vậy là xong phần 1. Home theater by Raspberry Pi.
Part 2:
Làm webserver với Raspberry Pi
Ở đây ta dùng Raspbian cho thông dụng
Sau khi install = NOOBS thì update, setup vài thông số cần thiết luôn.
Trước tiên cần vài thao tác để có thể control nó dễ dàng hơn.
sudo passwd root
Sau đó ta dùng ssh connect cho khỏe, Rasp xài GUI khá là chậm.
Những lệnh cơ bản liên quan
sudo apt-get update
sudo apt-get upgrade
Hệ thống:
lsusb: liệt kê các thiết bị kết nối cổng usb
uname -r: cho biết phiên bản của nhân Linux
time command: cho biết thời gian để thực thi xong lệnh command
command1 | comman2: chuyển kết quả của lệnh command1 làm đầu vào của lệnh command2
clear: xóa màn hình
sudo -k: chấm dứt chế độ dùng lệnh có chức năng của user root
free: kiểm tra tính trạng bộ nhớ
uptime: xem thời gian vận hành của hệ thống
raspi-config: truy cập cấu hình cho Raspberry Pi
sudo passwd root: Đổi password root.
sudo reboot: Khởi động lại RasPi hoặc sudo shutdown -r now
sudo shutdown -h now: Tắt RasPiTiến trình:
ps -ef: hiển thị tất cả các tiến trình đã được thực hiện
ps aux | less: liệt kê các tiến trình đang chạy
top: xem tất cả các tiến trình đang chạy ở thời gian thực
ss: kiểm tra thông tin socket và thông tin mạng TCP/UDP
ss -s: hiển thị tổng số socket
ss -l: hiển thị mọi cổng mở
kill pid: báo chấm dứt tiến trình mang số pidGói phần mềm:
/etc/apt/sourcs.list: tập tin xác định nguồn các kho phần mềm để tải xuống nhằm cài mới hoặc cập nhật hệ thống
apt-get update: cập nhật danh sách các gói phân mềm căn cứ vào các kho phần mềm có trong tập tin sources.list
apt-get upgrade: cập nhật các gói phần mềm đã cài rồi
apt-get dist-upgrade: cập nhật phiên bản debian đang có đến phiên bản mới tiếp theo
apt-get install soft: cài phần mềm soft đồng thời giải quyết các gói phần mềm phụ thuộc
apt-get remote soft: loại bỏ phần mềm soft cũng như tất cả các gói phần mềm phụ thuộc
apt-get remote –purge soft: loại bỏ phần mềm soft kể cả tập tin cấu hình của phần mềm soft
apt-get autoclean: xóa bỏ các bản sao chép của những gói phần mềm đã bị loại bỏ
apt-cache dumpavail: hiển thị danh sách các gói phần mềm đang có (rất nhiều)Mạng máy tính:
/etc/network/interfaces: thông tin cấu hình của các card mạng
uname -a: hiển thị tên của máy tính trong mạng (hostname)
ifdown eth0: shutdown eth0 (giống lệnh ifconfig eth0 down)
ifup eth0: ngược lại với lệnh trên (ifconfig eth0 up)
poweroff -i: ngưng hoạt động tất cả các nối mạng
route add default gwđịa chỉ ip: xác định địa chỉ IP của default GateWay
ifconfig: Xem thông tin mạng hiện tạiPhân vùng ổ cứng:
/etc/fstab: chứa các thông tin về các ổ cứng và hệ thống tập tin được gắn tự động
fdisk -l: hiển thị các phân vùng ổ cứng
mount -a: gắn, tách ra các ổ/thiết bị
mkfs.ext3 /dev/hda1: tạo một hệ thống tập tin “ext3″ trên phân vùng “/dev/hda1″
df -h: xem dung lượng còn trống của thiết bị lưu trữQuyền truy cập tập tin:
chown TenNguoiDung file: xác định người chủ của tập tin file là người dùng “TenNguoiDung”
chmod u+x file: giao (+) quyền thực thi (x) tập tin file cho người dùng (u)Nén và giải nét tập tin
tar xvf archive.tar: giải phóng các tập tin có trong tập tin “archive.tar”, đồng thời hiển thị các tên tập tin
Thư mục:
du -max-depth=1 -h /media: liệt kê tất cả các thư mục cùng với dung lượng trong /media
Thiết lập địa chỉ IP tĩnh cho RasPi
Config card mạng tại file config /etc/network/interfaces
Mã:sudo nano /etc/network/interfacesMặc định RasPi để config nhận IP từ DHCP.
Sửa lại thông số:Mã:iface eth0 inet dhcpthành
Mã:iface eth0 inet staticthêm vào các config:
Mã:address 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255 gateway 192.168.1.1để lưu lại bấm tổ hợp phím Ctrl + O ==> Enter ==> Ctrl + X
Webserver thì Cpanel vẫn là nhất. Tuy nhiên ram và chip yếu nên có lẽ k nên chạy, sẽ test sau.
Để đơn giản thì install apache +php đã.
http://www.raspberrypi.org/documentation/remote-access/web-server/apache.md
sudo apt-get install apache2 -y
sudo apt-get install php5 libapache2-mod-php5 -y
Như vậy là đã có thể chạy php. SQL sẽ install sau. Trước mắt vì đang làm proxy server by pass icloud nên ta sẽ test vấn đề này luôn.
proxy ta dùng squid.
sudo apt-get install squid3
Config cho phép http_access là xong
Hết phần webserver.
Part 3:
Home automation
Ta sẽ bắt đầu với mục tiêu đơn giản là điều khiển tắt mở đèn thông qua relay.
1. A Raspberry pi board
2. A relay board
3. A universal board for connecting the Raspberry pi and the relay board
4. A lamp
5. A wireless router
6. A USB charger for powering up the Raspberry pi
7. A transistor 8050
8. Two resistor (1K ohm)
9. Lan cable and USB cable and
10. Of course an iPhone as the remote control
Nếu tự làm module relay thì sơ đồ thế này
Quyết định là mua cái module 8 chanel cho nhanh.
Software-Raspberry Pi
1. Auto login
2. Static IP
3. Auto-run script
4. GPIO control
5. Socket server