PDA

View Full Version : Xin hướng dẫn - Chuông gọi hiển thị số phòng



ktshung
28-09-2016, 07:02:14 PM
Xin các cao thủ giúp đỡ em hoàn thành đề tài này với ạ!
Chả là khách của em có 1 cái khách sạn 28 phòng. Họ muốn trang bị mỗi phòng 1 nút nhấn, khi nhấn tại quầy lễ tân sẽ hiện trên màn hình LCD số phòng và chuông reo. Xin hỏi các bác mình có thể dùng arduino ko? Nếu dùng lập trình ntn? Em cám ơn các bác

th11
28-09-2016, 08:11:05 PM
trước em có làm theo 10 phòng, mỗi phòng có 1 nút nhấn, và tại quầy lễ tân có 10 con led hiển thị cho 10 phòng, khi khách nhấn ở phòng nào thì phòng ấy sáng lên ạ, nhưng phải mất 10 sợ dây, hix, không biết dùng arduino như thế nào, vụ này em mủ tịt, hóng xem thế nào

CKD
28-09-2016, 08:29:50 PM
Cơ bản là bác chủ muốn.. liên kết 28 phòng ấy kiểu gì?
Thường nếu khách sạn thì có hệ thống intercom, hoặc tổng đài điện thoại rồi.
Hoặc mỗi phòng đều có dây LAN.

Cần phải xác định hạ tầng cơ bản có gì thì mới mong có được giải pháp đúng.
Chứ mà kéo dây 28 phòng về thì cũng đuối à.

katerman
28-09-2016, 08:42:26 PM
@CKD: dùng nút nhấn analog khả thi không anh?

Gamo
28-09-2016, 09:09:25 PM
Có nhiều giải pháp, trả tiền tư vấn đây chứ

Nút nhấn ko bàn hé. Có điều bấm xong thì làm sao trung tâm biết phòng nào gọi?
1. Đơn giản nhất là mỗi phòng 1 sợi dây nối về 1 cái board trung tâm rồi vào arduino => pp này đi dây ná thở & coi chừng bị khách hàng chửi
2. Mỗi phòng gắn 1 bộ phát RF & đặt 1 bộ thu tại trung tâm
3. Thường thì mỗi phòng khách sạn hay có sẵn dây LAN, mỗi phòng 1 bộ MCU có ethernet nối về bộ trung tâm
4. Mua bộ WiFi có sẵn con MCU bên trong bé như con temp á; kết nối không dây về trung tâm cho máu
...

CKD
28-09-2016, 09:14:51 PM
Cái khó là phải liên kết 28 phòng.
Nếu giải pháp hữu tuyến thì phức tạp vì vướng dây nhợ. Nên nếu đã thiết kế có hệ thống intercom hay tổng đài thì tận dụng hệ thống có sẵn.
Hoặc nếu có hệ thống LAN cho mỗi phòng thì cũng tận dụng được luôn. LAN thì có 8 ruột nhưng nhu cầu thường chỉ dùng 4 (mạng 1G thì dùng 8 ruột), tận dụng 4 ruột còn lại tha hồ mà chế cháo.

Nếu chỉ có wireless thì.. liên kết hơi đắt, chi phí cao. Nhưng bù lại rất tiện lợi.
Giải pháp này cũng không quá đắt.. vì hiện nay chip tích hợp wireless + MCU luôn cũng rẻ. Giải pháp chắc tầm 200K cho một nút mạng. Trung tâm có thể dùng máy tính hoặc thiết bị android, hoặc arduino vô tư.

Gamo
28-09-2016, 09:18:18 PM
Hehe, cái tên CKD này nói có lý... mấy khách sạn hay có tổng đài đặc biệt,... phòng nào cần gì cứ bốc điện thoại lên là nó tự gọi lễ tân =>khỏi chế cháo cho mệt?

secondhand
29-09-2016, 12:26:08 AM
@ ktshung
Thấy nick "kiến trúc sư" của bác cũng ngại, nhưng đang rãnh nên phang bậy phát.

1- Nếu có intercom thì chuyện lấp hệ thống này thừa thải ... bỏ qua.
2- Nếu có mạng lan thì phải can thiệp vào thiết bị đầu cuối ... moi móc chỗ nào ... bỏ qua.
3- Nếu có tổng đài nội bộ => trường hợp #1.
4- Hệ thống wifi thì vốn đầu tư thiết bị cao.

Cái tật mình thì thiết kế 1 thứ gì đó, phải thật tiết kiệm vật tư, nhường kinh phí cho chất xám, đề mà còn nhậu nhẹt nữa chứ :D
Chơi 1 phát ăn liền đơn giản nhưng mang phong cách tư bản.
Hiện nay hầu như các khách sạn lẫn nhà trọ đều có cáp TV, sao ta ko tận dụng những thứ hạ tầng có sẵn, chỉ bỏ vào 1 ít linh kiện là thành 1 hệ thống hiện đại như ai chứ bộ :D
Trên hệ thống cap là tín hiệu RF, ta có thể đưa 1 điện thế ac vào trong chính cáp đấy mà ko ảnh hưởng gì nhiều đến TV.
Đầu tiên ráp 28 bộ tạo xung dùng ic 555, mỗi 1 bộ phát xung ứng với số phòng. Td phòng số 1 mỗi lần bấm phát 1 xung, tương tự thế cho đến 28 xung, nhưng từ 2 xung trở lên phải chẩn à, số xung càng nhiều thì nhịp xung càng cao để rút ngắn thời gian bấm. Bộ phát xung này kết nối trực tiếp vào dây RF của TV, tức cổng antena thông qua jack chử T. Chi phí cho 1 bộ này khoảng 25 nghìn vnđ.
Tại hợp cáp trung tâm ta vẫn lấy ra tín hiệu đó, nó đưa vào 1 board arduino, board này cộng với LCD khoảng 250k. Viết cho nó vài dòng lệnh dịch ra LCD để hiển thị số. Td phòng số 5 sẽ có 5 xung, xung nhịp là 10hz, phòng số 10 có 10 xung, tần số 20hz .... 28 bộ xung này phải chẩn để viết cú pháp cho arduino dịch. Nếu trong trường hợp 2 hoặc 3 phòng mắc ỉa 1 lược, khi ấy tại trung tâm sẽ là 1 loạt tính hiệu vô nghĩa. Yên tâm đi! arduino nó cũng ngu bỏ mịa khi chưa cho nó học.
Phần lập trình dạy cho Arduino thì bác chủ tự xử nhé! E ứ biết viết đâu. Nhớ lúc nạp code khóa chíp luôn cho ko bị rò rỉ, để dành ăn dài dài khà khà.

Chúc bác thành công!

ktshung
29-09-2016, 06:35:35 AM
hiện tại mỗi phòng đã có một cặp dây về lễ tân rồi các bác. Em suy nghĩ là nối các dây này vào chân tín hiệu mạch Adruino. Chân nào chập lại sẽ hiện số chân đó. Nếu bác Gamo tư vấn, em sẳn sàng thanh toán công tư vấn... hehehe. cám ơn các bác

CKD
29-09-2016, 10:59:30 AM
hiện tại mỗi phòng đã có một cặp dây về lễ tân rồi các bác. Em suy nghĩ là nối các dây này vào chân tín hiệu mạch Adruino. Chân nào chập lại sẽ hiện số chân đó. Nếu bác Gamo tư vấn, em sẳn sàng thanh toán công tư vấn... hehehe. cám ơn các bác

Đã có dây dẩn về thì vô tư rồi.. nhưng mà bác muốn monitor = arduino để làm gì, quất cho nó con LED là xong rồi.
Chơi arduino với nó thì dùng MEGA2560 là xong.. quá nhiều IO tha hồ mà độ chế. Chứ con UNO co 20 IO hà.

sieunhim
29-09-2016, 02:42:13 PM
Tại em ko biết mục đích của bác chủ xài nút nhấn để làm gì nhưng nếu nhấn nút để gọi lễ tân thì em có chuyện vui thế này:
- Khách --> nhấn nút
- Tiếp tân --> anh xx ơi lên phòng số xx hỏi xem họ cần gì (tại lấy cặp dây của đt phòng làm LED rồi làm gì có đt nữa)
- anh XX lật đật chạy lên gõ cửa phòng--> Xin lỗi a/c cần gì
- Khách: --> ở dây có áo mưa ko bán cho e 1 cái :)
- anh XX lại chạy xuống lấy áo mưa cho khách rồi lại chạy lên --> mệt vãi chưởng --> 30 phút nó gọi cho 2 lần lên khoảng 3 lầu thôi là vỡ mồm.

Xin hỏi bác chủ Khách sạn mà xài nút nhấn làm gì --> cấp cứu hay sao vậy bác chủ --> xài nút nhấn rồi bên dưới cho người chạy lên phòng hỏi a/c cần gì hay sao --> nhảm --> tất cả các khách sạn lớn (em ko nói mấy khách sạn dạng nhà nghỉ ở khu CN nhé) đều xài tổng đài và Dây mà bác chủ nói đó ban đầu e đảm bảo là build cho hệ thống tổng đài (còn sau này bác chủ muốn thay đổi thì chịu:D). KS mà chắc chắn có điện thoại bàn trong mỗi phòng để call xuống tiếp tân --> không lẽ con tiếp tân nó ko nhìn thấy số sao (99% khi build tổng đài luôn build có kèm bàn key --> có LCD hiển thị số).

Nếu đã xài tổng đài thì đơn giản chỉ đặt số nội bộ trong mỗi phòng tương ứng với số phòng là ok.

Chọc bác chủ đừng giận nhé kakaka
ps: Nếu làm tổng đài thì hú em hehe --> Nghề của chàng mà kakaka

ktshung
30-09-2016, 08:53:06 PM
Đã có dây dẩn về thì vô tư rồi.. nhưng mà bác muốn monitor = arduino để làm gì, quất cho nó con LED là xong rồi.
Chơi arduino với nó thì dùng MEGA2560 là xong.. quá nhiều IO tha hồ mà độ chế. Chứ con UNO co 20 IO hà.

xin bác hướng dẫn cho 3m cách lập trình mega2560 đi ạ. Ta tập trung giải quyết theo cách này bác nhé

CKD
30-09-2016, 09:12:45 PM
Bác phải đặt yêu cầu cụ thể chứ chung chung thì biết đường nào mà lần.
Chứ chỉ xác định phòng nào gọi thì quất con LED vào là xong. Còn nếu nhiều mục đích khác thì phải hiểu yêu cầu mới biết đường tính chứ ;)

Gamo
01-10-2016, 08:07:33 AM
xin bác hướng dẫn cho 3m cách lập trình mega2560 đi ạ. Ta tập trung giải quyết theo cách này bác nhé

Ông ra tiệm bán Arduino mua 1 cái, xin nó thêm tờ giấy "nhập môn Arduino" là xong chứ gì... cháu tui lớp 3 cũng đang vọc Arduino đóa...

Nếu đã có dây từng phòng đi ra ngoài thì đơn giản nhất là bỏ qua con Mega2560 luôn đi. Ở ngoài tiếp tân ông cho nó gắn 28 số bằng LED tương ứng với 28 phòng. Sợi dây của mỗi phòng gắn vào số tương ứng. Khách nhấn nút thì số LED tương ứng của phòng đó sáng... còn nếu chưa biết cách đấu LED thì hỏi CKD hoặc cháu tui sẽ chỉ cho ;)

CKD
01-10-2016, 11:57:32 AM
Gà mờ có biết gì về Arduino hay câu LED không mà chém gió thế.
Không biết thì về hỏi cháu đi nhe, để người nhớn tập trung nói chuyện.

Gamo
01-10-2016, 04:03:02 PM
Hohoho, hôm trước thằng cháu về khoe "con học chung lớp với chú CKD" ;)

Vài bữa nữa chắc nó khoe tiếp "có thêm chú ktshung cũng đua đòi" ;)

taih2
01-10-2016, 04:31:58 PM
Mỗi phòng bác gắn 1 cái phát RF, dưới tiếp tân bác gắn thêm 1 MCU giải mã từng phòng, rồi delay cho con led tầm 30s cho tiếp tân biết phòng nào là được rồi bác ạ.
Khỏi dây nhợ lằng ngoằng tốn công

ktshung
01-10-2016, 05:59:02 PM
Bác phải đặt yêu cầu cụ thể chứ chung chung thì biết đường nào mà lần.
Chứ chỉ xác định phòng nào gọi thì quất con LED vào là xong. Còn nếu nhiều mục đích khác thì phải hiểu yêu cầu mới biết đường tính chứ ;)
Yêu cầu của em rất đơn giản, 28 phòng đánh số 01, 02, 03 ... 28. Khách phòng nào nhấn nút thí trên màn hình LCD hiện ra số: 01, 02 ,03 ... 28. Cám ơn bác

ktshung
01-10-2016, 06:00:58 PM
Hohoho, hôm trước thằng cháu về khoe "con học chung lớp với chú CKD" ;)

Vài bữa nữa chắc nó khoe tiếp "có thêm chú ktshung cũng đua đòi" ;)
Kệ em, bác không đua đòi thì ở nhà nhá ... hehehe

ktshung
01-10-2016, 06:10:37 PM
Mỗi phòng bác gắn 1 cái phát RF, dưới tiếp tân bác gắn thêm 1 MCU giải mã từng phòng, rồi delay cho con led tầm 30s cho tiếp tân biết phòng nào là được rồi bác ạ.
Khỏi dây nhợ lằng ngoằng tốn công
Cám ơn bác, tuy nhiên phương án này Cđt không ưng, họ ưng arduino, hehehe. Dù sao cũng cám ơn bác

Gamo
01-10-2016, 06:11:02 PM
Hehe, đùa thui, nhưng Arduino dễ như nhai kẹo ấy mà. Như trong SG thì chú bán hàng kẹp theo tờ giấy hướng dẫn nữa, ông vọc 1-2 tiếng đồng hồ là biết cách dùng. Nhớ mua thêm cái LCD shield nữa để vọc.

Sau khi vọc xong rùi mà vẫn chưa thông thì có CKD & cháu tui ;) Tui hem biết xài Arduino, chỉ biết tán phét thui :o

duonghoang
02-10-2016, 09:54:48 AM
--- Cụ xài 28 bộ này xem có khả thi không.


https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR_L6ALS83Z3PyFGGbJW3XOk_x2LUeTn mHb1X-hbI33kh-hw639ug

ktshung
02-10-2016, 10:17:41 AM
Hehe, đùa thui, nhưng Arduino dễ như nhai kẹo ấy mà. Như trong SG thì chú bán hàng kẹp theo tờ giấy hướng dẫn nữa, ông vọc 1-2 tiếng đồng hồ là biết cách dùng. Nhớ mua thêm cái LCD shield nữa để vọc.

Sau khi vọc xong rùi mà vẫn chưa thông thì có CKD & cháu tui ;) Tui hem biết xài Arduino, chỉ biết tán phét thui :o

Em vọc ba ngày rồi chưa ra bác à. Bác bật mí chút cho em với, sau này làm nhà giường để góc nào thì sung em sẽ tư vấn cho bác, hehehe

Gamo
02-10-2016, 12:28:00 PM
Óe... ông dùng Arduino điều khiển led nhấp nháy được chưa? Cái thứ 2 là đã vọc LCD chạy được chưa?

Hehe, đang chưa biết để cái giường góc nào đây

CKD
02-10-2016, 12:31:58 PM
Bác chủ đã chuẩn bị được gì, đã mua cái gì, hiện số lên LCD nào v.v...?
Show lên để em biết, phần code thì em quất cho. Nếu on/off thôi thì làm tẹo là xong.

Ngoài vụ hiển thị ra thì còn làm gì khác không?
Không tiện open thì mật thư cũng được. Chứ không hiểu rỏ thì khó mà code.

ktshung
06-10-2016, 08:39:59 AM
Em dùng Mega 2560 R3 Mega2560 REV3 và màn hình LCD 2004 loại hay dùng cho máy in 3d được không bác? Em cám ơn

ktshung
06-10-2016, 08:42:44 AM
LED nhấp nháy OK, Em đã làm con in 3D ok rồi bác

Gamo
06-10-2016, 08:42:55 AM
Đại da giàu quá.... mà màn hình LCD 2004 đó có thiết kế dạng shield hem?

Ông viết code hay là chỉ chạy code mẫu?

ktshung
06-10-2016, 08:45:35 AM
Đại da giàu quá.... mà màn hình LCD 2004 đó có thiết kế dạng shield hem?

Ông viết code hay là chỉ chạy code mẫu?
Chạy code mẫu rồi chỉnh sửa theo ý mình thôi bác. Em ko biết gì về code, mọi thứ chỉ là lắp ghép lung tung, hehehe

Gamo
06-10-2016, 08:56:06 AM
Hehe, dzậy là biết nạp code rùi. Ông thử viết 1 chương trình mới, hiển thị chữ "ktshung xau trai" được hem?

Code mẫu nè
(những dòng bắt đầu bằng // chỉ là để chú thích, bỏ cũng được)

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("ktshung xau trai");
}

void loop() {
}

ktshung
06-10-2016, 08:59:05 AM
Hehe, dzậy là biết nạp code rùi. Ông thử viết 1 chương trình mới, hiển thị chữ "ktshung xau trai" được hem?

Code mẫu nè
(những dòng bắt đầu bằng // chỉ là để chú thích, bỏ cũng được)

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("ktshung xau trai");
}

void loop() {
}
OK bác, em sẽ thử, chỉ thay chử xấu thành chữ đẹp. Bác có vẽ ganh tỵ với nhan sắc của em hơi quá ... :D