Menu English Ukrainian Tiếng Nga Trang Chủ

Thư viện kỹ thuật miễn phí cho những người có sở thích và chuyên gia Thư viện kỹ thuật miễn phí


ENCYCLOPEDIA VỀ ĐIỆN TỬ TRUYỀN THANH VÀ KỸ THUẬT ĐIỆN
Thư viện miễn phí / Sơ đồ của các thiết bị vô tuyến-điện tử và điện

Arduino. Hoạt động I/O kỹ thuật số. Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện

Thư viện kỹ thuật miễn phí

Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện / Đài thiết kế nghiệp dư

Bình luận bài viết Bình luận bài viết

Sau khi tải môi trường phát triển Arduino IDE, bạn có thể thấy rằng trong khoảng trống của chương trình tương lai được hiển thị trong cửa sổ mở ra, có hai chức năng: thiết lập () và vòng lặp (). Hàm setup() bắt đầu bất kỳ chương trình nào. Nó thực hiện nó một lần ngay sau khi cấp nguồn cho bo mạch và mỗi lần sau khi nhấn nút RESET trên bo mạch, thao tác này sẽ đặt vi điều khiển về trạng thái ban đầu. Bên trong chức năng này, các chế độ hoạt động của các cổng được đặt, giao diện nối tiếp và các thiết bị ngoại vi khác được khởi tạo, cả bên trong bộ vi điều khiển và bên ngoài được kết nối với nó. Chức năng này, ngay cả khi nó trống, phải có mặt trong chương trình.

Hàm loop() chứa một vòng lặp vô hạn mà bộ vi điều khiển thực hiện lặp đi lặp lại cho đến khi tắt nguồn. Nó thẩm vấn các cảm biến bên ngoài, gửi lệnh đến bộ truyền động, thực hiện các phép tính và các hoạt động khác. Ví dụ: chúng ta hãy thực hiện một chương trình đơn giản, trong khoảng thời gian một giây, sáng lên rồi tắt đèn LED tích hợp trong bo mạch Arduino, được đánh dấu trên đó bằng chữ L và được kết nối với chân kỹ thuật số D13.

Chương trình này là một trong những ví dụ tiêu chuẩn được cung cấp cùng với Arduino IDE. Trong bảng. 1 hiển thị văn bản của nó ở dạng mà nó được đính kèm. Lưu ý rằng trong thuật ngữ Arduino, mã nguồn của chương trình được gọi là "sketch" - bản phác thảo.

Bảng 1

Arduino. Hoạt động I / O kỹ thuật số

Các đoạn chương trình thuộc một khối được giới hạn bởi dấu ngoặc nhọn { và }. Trong phần tiếp theo, chúng tôi sẽ gọi chúng là dấu ngoặc toán tử. Văn bản của chương trình có thể chứa một bình luận giải thích bản chất và sắc thái công việc của nó. Một bình luận nhiều dòng được giới hạn trong sự kết hợp của các ký tự /* (ở đầu) và */ (ở cuối). Các ký tự // bắt đầu một nhận xét kết thúc ở cuối cùng một dòng. Trong quá trình dịch (chuyển đổi văn bản của chương trình bằng ngôn ngữ lập trình mà một người có thể hiểu được thành mã máy mà bộ vi điều khiển có thể thực thi được), phần văn bản này hoàn toàn bị bỏ qua.

Dòng thực thi duy nhất trong phần thân của hàm setup ()

pinMode (13, OUTPUT);

đặt chân D13 của bảng Arduino ở chế độ đầu ra.

Hàm loop () bắt đầu bằng dòng

digitalwrite (13, CAO);

Nó thiết lập mức logic cao D13 đầu ra. Trong Arduino UNO, nó bằng với điện áp cung cấp (+5 V) so với dây chung. Điều này sẽ bật đèn LED.

Nó được theo sau bởi dòng

độ trễ (1000);

Nó khiến chương trình thực thi không chuyển sang dòng tiếp theo trong thời gian được chỉ định trong ngoặc tính bằng mili giây. Sau khi tạm dừng, chương trình đặt đầu ra D13 ở mức logic thấp tương ứng với tiềm năng của dây chung, sẽ tắt đèn LED. Hoạt động này được mô tả bởi dòng

digitalwrite (13, THẤP);

Tiếp theo, chương trình một lần nữa duy trì tạm dừng 1 giây, sau đó nó lặp lại từ đầu toàn bộ chuỗi hoạt động được mô tả trong phần thân của hàm loop(). Điều này tiếp tục cho đến khi tắt vi điều khiển.

Hàm delay() nên được sử dụng cẩn thận. Nếu bất kỳ sự kiện quan trọng nào xảy ra trong khoảng thời gian được chỉ định trong đó (ví dụ: cảm biến được kích hoạt trong một thời gian ngắn), chương trình sẽ không phản ứng với sự kiện này.

Cần nhớ rằng dòng điện tối đa do chân Arduino cung cấp, hoạt động như một đầu ra, là 40 mA, trong khi tổng dòng điện của tất cả các đầu ra không được vượt quá 300 mA. Điều này là đủ để cung cấp năng lượng cho đèn LED thông thường, bạn cũng có thể kết nối trực tiếp rơle sậy điện áp thấp hoặc động cơ rung công suất thấp từ điện thoại di động với đầu ra. Bạn sẽ không thể kết nối bất cứ thứ gì mạnh hơn nếu không có bộ khuếch đại và điều đó rất nguy hiểm - bạn có thể làm hỏng bộ vi điều khiển.

Đầu vào tương tự A0-A5 có thể được sử dụng làm đầu vào và đầu ra kỹ thuật số cùng với D0-D13 nếu cần, tham chiếu đến chúng tương ứng bằng các số từ 14 đến 19.

Bây giờ hãy sửa đổi chương trình một chút. Đối với một thuật toán đơn giản như vậy, những sửa đổi này không phải là cơ bản, nhưng trong những trường hợp phức tạp hơn, những thay đổi đó rất quan trọng. Trước hết, hãy thay thế bình luận bằng tiếng Anh bằng tiếng Nga. Ví dụ dòng bật đèn LED sẽ được chú thích như sau: "Turn on the LED". Bạn không nên viết: "Chúng tôi đặt mức cao trên dòng D13", điều này đã rõ ràng trong văn bản của chương trình.

Tất nhiên, bình luận chi tiết trên từng dòng thường là thừa, nhưng bạn không nên lười viết nó. Sau một thời gian, các chi tiết của chương trình sẽ bị lãng quên, ngay cả chính tác giả, chỉ một nhận xét sẽ giúp bạn nhanh chóng hiểu được bản chất của nó.

Tiếp theo, chúng ta sẽ thay đổi chương trình sao cho đèn LED không kết nối với chân D13 mà với chân D12 của Arduino nhấp nháy. Vì không có đèn LED nào được kết nối với D12 trên bảng nên cần có đèn LED bên ngoài với điện trở nối tiếp. Kết nối nó theo sơ đồ thể hiện trong hình. 1. Điện trở bổ sung được chọn sao cho đèn LED cắt dòng nằm trong khoảng 5 ... 10 mA. Điều này sẽ cung cấp ánh sáng khá sáng cho hầu hết các đèn LED. Bảng Arduino UNO với đèn LED bên ngoài được kết nối được hiển thị trong hình. 2.

Arduino. Hoạt động I / O kỹ thuật số
Cơm. 1. Sơ đồ kết nối LED

Arduino. Hoạt động I / O kỹ thuật số
Cơm. 2. Bo mạch Arduino UNO với đèn LED bên ngoài được kết nối

Nên làm một số đèn LED có thêm điện trở. Chúng sẽ hữu ích không quá nhiều để tạo hiệu ứng ánh sáng tự động, nhưng để kiểm tra nhanh các mức điện áp ở đầu ra của bảng và theo dõi sự thay đổi của chúng theo chương trình đang được gỡ lỗi.

Để điều khiển một đèn LED được kết nối không phải với D13 mà với D12, trong trường hợp này, chỉ cần sửa tất cả các số 13 trên 12 trong văn bản chương trình là đủ, ngoài các nhận xét, số 13 chỉ xuất hiện trong văn bản chương trình ba lần, vì vậy không khó để thay đổi nó. Tuy nhiên, khi khối lượng của chương trình tăng lên, tình hình sẽ thay đổi về cơ bản. Thay thế ba số là một chuyện và thay thế vài chục số giống hệt nhau ở những vị trí khác nhau trong một chương trình dài là một chuyện khác. Ngoài ra, có thể ở đâu đó con số này có nghĩa là một thứ hoàn toàn khác và bạn không cần phải thay đổi nó.

Để thực hiện những thay đổi như vậy dễ dàng hơn, chúng tôi khai báo một biến ở đầu chương trình và gán cho nó một giá trị tương ứng với số đầu ra mong muốn:

int LEDPIN = 12;

Ngoài ra, bất cứ nơi nào xuất hiện số 13, chúng tôi sẽ thay thế nó bằng tên của biến này. Nếu bây giờ bạn cần thay đổi lại kết nối của đèn LED, thì chỉ cần thay đổi một số trong phần mô tả của biến LEDPIN là đủ.

Chương trình sửa đổi được hiển thị trong Bảng. 2. Nó phải được nạp vào bộ nhớ vi điều khiển của bo mạch Arduino. Để thực hiện việc này, chọn "Tệp → Tải" từ menu chính của IDE. Nếu chương trình được gõ trong cửa sổ chỉnh sửa chưa được lưu vào một tệp trước, IDE sẽ yêu cầu bạn chỉ định tên tệp mà nó sẽ lưu nó. Sau một thời gian do Arduino IDE yêu cầu để dịch chương trình thành mã máy mà vi điều khiển có thể hiểu được, đèn LED "Rx" và "Tx" sẽ bắt đầu nhấp nháy trên bo mạch, báo hiệu việc nhận và truyền thông báo qua giao diện nối tiếp của vi điều khiển .

Bảng 2

Arduino. Hoạt động I / O kỹ thuật số

Nếu mọi thứ đã được thực hiện chính xác, một báo cáo về việc tải chính xác sẽ xuất hiện ở dưới cùng của cửa sổ chương trình. Nó sẽ hiển thị thông tin về dung lượng 32 KB khả dụng của bộ nhớ chương trình vi điều khiển mà chương trình đã tải đã chiếm và dung lượng RAM cần thiết để chứa các biến. Đèn LED được kết nối với chân D12 sẽ bắt đầu nhấp nháy trong khoảng thời gian 2 giây.

Nếu bạn kết nối một dòng gồm năm đèn LED với các chân Arduino D8-D12 (Hình 3) và tải chương trình được hiển thị trong Bảng. 3, nó sẽ luân phiên bật trong 500 ms mỗi đèn LED này và đèn LED được kết nối với D13, được lắp trên bảng. Chương trình này có thể kéo dài hơn nhiều nếu vấn đề được giải quyết "trên trán", bằng cách lặp lại số lần cần thiết trong các dòng chức năng setup() với số lượng đầu ra khác nhau, thiết lập chúng cho đầu ra và trong chức năng loop() - một chuỗi các dòng bao gồm đèn LED tiếp theo tạm dừng và tắt. Các câu lệnh lặp for đã giúp rút ngắn chương trình.

Arduino. Hoạt động I / O kỹ thuật số
Cơm. 3. Một dòng năm đèn LED

Bảng 3

Arduino. Hoạt động I / O kỹ thuật số

Dấu ngoặc đơn sau từ khóa for cho biết giá trị ban đầu của biến vòng lặp - LEDPIN=8, điều kiện để thực hiện phần thân vòng lặp - LEDPIN<14, và thao tác được thực hiện với biến vòng lặp sau mỗi lần thực hiện phần thân của nó - LEDPIN++, có nghĩa là rằng giá trị của biến được tăng lên một. Nếu cần, các tham số của vòng lặp for có thể dễ dàng thay đổi.

Thân vòng lặp trong ngoặc toán tử tuân theo điều kiện. Trong trường hợp đầu tiên (trong hàm setup()), nó bao gồm một dòng duy nhất sẽ được thực hiện sáu lần với các giá trị LEDPIN từ 8 đến 13. Trong trường hợp thứ hai (trong hàm loop()), vòng lặp tuyên bố chỉ định rằng một chuỗi gồm ba dòng có cùng giá trị của biến.

Ngoài việc điều khiển các thiết bị bên ngoài trong bất kỳ hệ thống nào, cần phải nhận thông tin từ các cảm biến khác nhau. Không có chúng, ngay cả robot phức tạp nhất cũng sẽ chỉ là một món đồ chơi đồng hồ, không thể thay đổi hành vi của nó tùy thuộc vào điều kiện bên ngoài.

Với điện áp cung cấp là 5 V và trong Arduino UNO, chính xác là như vậy, đầu vào kỹ thuật số của vi điều khiển được đảm bảo được coi là điện áp logic cao (tương ứng với đơn vị logic) hơn +3 V và như mức logic thấp (tương ứng với mức 1,5 logic) - điện áp nhỏ hơn +XNUMX V Các giá trị trung gian (bao gồm cả khi đầu vào không được kết nối ở bất kỳ đâu) cho kết quả thay đổi hỗn loạn, không thể đoán trước tùy thuộc vào phiên bản vi điều khiển, điện áp cung cấp của nó, nhiệt độ và các yếu tố khác. Do đó, điều mong muốn là đầu vào kỹ thuật số luôn có điện áp ở mức logic cao hoặc thấp đã biết.

Cảm biến đơn giản nhất là một nút thông thường không cố định, được kết nối như trong hình. 4 vào một trong các chân bên ngoài của bo mạch Arduino, trong trường hợp này là D7. Khi thả nút SB1, mức điện áp ở đầu vào của vi điều khiển sẽ thấp (điện trở R1 sẽ cung cấp cho nó), khi nhấn sẽ ở mức cao. Nếu bạn thay đổi vị trí của nút và điện trở (Hình 5), thì các mức cũng sẽ thay đổi vị trí. Bây giờ, điện trở R1 sẽ cung cấp mức cao khi nhả nút và nhấn nó sẽ đặt mức thấp.

Arduino. Hoạt động I / O kỹ thuật số
Cơm. 4. Sơ đồ kết nối cảm biến

Arduino. Hoạt động I / O kỹ thuật số
Cơm. 5. Sơ đồ kết nối cảm biến

Điện trở của điện trở R1 không được quá nhỏ, vì dòng điện chạy qua nó khi nhấn nút sẽ tiêu hao từ nguồn điện và làm giảm hiệu suất của thiết bị. Trong trường hợp nguồn điện từ máy tính để bàn hoặc nguồn điện lưới, điều này không quá quan trọng, nhưng với phiên bản pin Arduino, điện trở R1 thấp sẽ làm giảm đáng kể thời lượng pin có thể có của thiết bị.

Xin lưu ý rằng vi điều khiển có các điện trở bên trong để thực hiện chức năng của điện trở R1. Chúng bị tắt theo mặc định. Tuy nhiên, để kết nối, chẳng hạn như một điện trở bên trong với đầu vào D2, chỉ cần thêm dòng vào hàm setup () là đủ

pinMode (2, INPUT_PULLUP);

Xem xét đầu vào kỹ thuật số bằng cách sử dụng ví dụ được đưa ra trong Bảng. 4 chương trình tắt đèn LED được kết nối với chân 13 khi bạn nhấn nút được kết nối với chân D7. Nó dựa trên toán tử điều kiện

if (tình trạng)

{

/ * Hành động nếu điều kiện được đáp ứng * /

}

khác

{

/ * Hành động nếu điều kiện không được đáp ứng * /

}

Bảng 4

Arduino. Hoạt động I / O kỹ thuật số

Nó phục vụ để chọn một hành động tùy thuộc vào việc điều kiện được chỉ định trong đó có được đáp ứng hay không. Nếu không cần làm gì nếu điều kiện không được đáp ứng, đoạn khác {...} có thể được bỏ qua. Việc sử dụng các câu lệnh điều kiện mang lại sự linh hoạt cho chương trình. Tùy thuộc vào trạng thái của các cảm biến bên ngoài, chúng thay đổi thứ tự của chương trình và hoạt động của thiết bị được trang bị vi điều khiển.

Trên thực tế, việc kiểm tra trạng thái của nút được thực hiện bởi một toán tử logic

digitalRead (BUT) = CAO

Trong trường hợp này, nó so sánh giá trị được trả về bởi chức năng đọc trạng thái của chân BUT mà nút được kết nối với hằng số logic CAO và nếu chúng bằng nhau, nó sẽ nhận giá trị TRUE (true), nếu không - FALSE (SAI). Lưu ý rằng phép thử đẳng thức được biểu thị bằng hai dấu bằng liên tiếp. Và một dấu bằng biểu thị hoạt động gán giá trị cho một biến. Đừng nhầm lẫn chúng, điều này dẫn đến các lỗi khó tìm.

Sử dụng ví dụ về chương trình vừa được xem xét, có thể dễ dàng nhận thấy việc sử dụng hàm delay() không chính xác dẫn đến hậu quả gì. Nếu bạn "bỏ ghi chú" (bỏ hai dòng liền trước) hàm delay( 10000) ở dòng áp chót của chương trình, thì sau mỗi lần thực hiện phần thân của hàm loop(), chương trình sẽ đợi 10 giây trước khi tiếp tục công việc. Đương nhiên, tất cả các lần nhấn nút trong khoảng thời gian này sẽ bị bỏ qua.

Khả năng giao tiếp với máy tính cá nhân của Arduino thông qua giao diện nối tiếp là rất hữu ích. Nó có thể được sử dụng không chỉ để tải chương trình xuống bộ vi điều khiển mà còn để trao đổi thông tin hai chiều trong quá trình thực thi. Thông qua giao diện này, Arduino có thể chuyển thông tin thu thập được sang máy tính để xử lý hoặc lưu trữ phức tạp và nhận các lệnh và dữ liệu ban đầu từ nó. Hai thiết bị vi điều khiển cũng có thể tương tác theo cách này. Cổng nối tiếp của vi điều khiển sử dụng các chân kỹ thuật số D0 và D1 của bo mạch, vì vậy khi thiết lập và sử dụng giao tiếp qua cổng nối tiếp, chúng không thể được sử dụng cho bất kỳ mục đích nào khác.

Ví dụ, hãy xem xét chương trình được hiển thị trong Bảng. 5, sẽ gửi thông tin về trạng thái của đầu ra D12 tới máy tính. Nếu mức trên cao, chương trình sẽ gửi mã ký hiệu H đến máy tính và nếu mức thấp, mã ký hiệu L. Bất kỳ chương trình nào có thể hoạt động với cổng COM của máy tính đều có thể nhận thông tin này. Arduino IDE có màn hình cổng nối tiếp tích hợp cho phép máy tính hiển thị tin nhắn văn bản nhận được từ bo mạch Arduino và gửi tin nhắn do người dùng nhập trên bàn phím của máy tính.

Bảng 5

Arduino. Hoạt động I / O kỹ thuật số

Dòng Serial.begin(9600) trong hàm setup() khởi tạo cổng nối tiếp của vi điều khiển và đặt tốc độ truyền thành 9600 baud. Bạn cũng có thể đặt các tốc độ truyền tiêu chuẩn khác: 1200, 2400, 4800, 9600, 19200, 38400, 57600 hoặc 115200 Baud. Trong trường hợp này, tốc độ được đặt trong bộ vi điều khiển phải khớp với tốc độ mà cổng COM của máy tính hoặc thiết bị khác được cấu hình, với thông tin phải được trao đổi. Tốc độ cho phép đảm bảo việc tiếp nhận thông tin đáng tin cậy phụ thuộc vào độ dài của cáp kết nối Arduino với máy tính. Ví dụ: sử dụng cáp USB tiêu chuẩn dài 1,8 m, máy tính sẽ nhận thông tin từ Arduino ngay cả ở tốc độ 115200 baud. Và nếu bạn thêm cáp mở rộng năm mét vào cáp này, tốc độ cho phép sẽ giảm xuống còn 4800 baud.

Hàm Seri-al.print() gửi thông tin đến cổng nối tiếp, trong đó tên của biến có giá trị Gửi sẽ được gửi hoặc chuỗi ký tự sẽ được truyền, được chỉ định trong ngoặc đơn. Để phân biệt với tên biến, chuỗi ký tự được đặt trong dấu ngoặc kép. Có một sửa đổi đối với chức năng Serial.println() này. Nó khác ở chỗ, sau khi chuyển thông tin được đặt trong ngoặc (nếu có), nó bổ sung cho nó các ký tự xuống dòng và xuống dòng. Bắt đầu một dòng mới và tổ hợp các ký tự trong chuỗi đã cho.

Sử dụng chương trình trên, bạn có thể dễ dàng đảm bảo rằng nếu không có tín hiệu bên ngoài nào được áp dụng cho đầu ra của vi điều khiển được cấu hình làm đầu vào, thì trạng thái của nó có thể là bất kỳ và thay đổi ngẫu nhiên trong quá trình hoạt động. Bạn cũng có thể xác định giá trị thực của điện áp mà bộ vi điều khiển ngừng coi là mức logic thấp và bắt đầu coi nó là mức cao.

Tiếp theo, hãy xem xét một chương trình (Bảng 6) bật và tắt đèn LED trên bo mạch theo lệnh nhận được từ máy tính qua cổng nối tiếp. Cần lưu ý rằng thông tin được truyền qua cổng nối tiếp theo byte. Bộ thu cổng nối tiếp, hoạt động độc lập với bộ vi xử lý của vi điều khiển, nhận các byte này và lưu trữ chúng trong bộ đệm 64 byte của nó.

Таблица 6.

Arduino. Hoạt động I / O kỹ thuật số

Để chương trình xác định xem có các byte đã nhận trong bộ đệm hay không, có một hàm Serial.available() trả về số của chúng. Nếu có, chương trình sử dụng Serial. read() đọc một byte từ bộ đệm và gán giá trị của nó (mã ký tự nhận được) cho một biến C char. Tiếp theo, các câu lệnh có điều kiện so sánh mã với các mẫu và nếu chúng khớp nhau, hãy bật hoặc tắt đèn LED.

Bạn có thể gửi lệnh bằng cách sử dụng cùng màn hình cổng nối tiếp đã được sử dụng để nhận thông tin. Ở phần trên của cửa sổ (Hình 6) có một dòng để nhập các ký tự được truyền. Sau khi nhập ký hiệu hoặc trình tự của chúng từ bàn phím, hãy nhấn nút màn hình "Gửi". Trên bo mạch Arduino, đèn LED "Rx" sẽ nhấp nháy nhanh, cho biết bộ vi điều khiển đã nhận được thông tin. Tất nhiên, việc truyền mã thủ công là một phương pháp quản lý dễ dàng nhưng khác xa với phương pháp quản lý tốt nhất. Thông thường, một chương trình điều khiển máy tính đặc biệt được viết cho việc này.

Arduino. Hoạt động I / O kỹ thuật số
Cơm. 6. Cửa sổ chương trình

Như vậy, sử dụng bo mạch vi điều khiển Arduino, bạn có thể tạo ra một số thiết bị điện tử đơn giản một cách tương đối dễ dàng. Nếu chúng ta giới hạn bản thân ở đầu vào-đầu ra kỹ thuật số, thì đây có thể là hiệu ứng ánh sáng tự động, báo trộm đơn giản nhất, đồng hồ đo các thông số khác nhau với cảm biến kỹ thuật số. Hơn nữa, thật dễ dàng để làm cho thiết bị tương tác với máy tính. Đương nhiên, khả năng của Arduino không chỉ giới hạn ở những khả năng được mô tả trong bài viết này. Bảng này cũng có thể hoạt động với tín hiệu tương tự, điều này sẽ được thảo luận sau.

Các chương trình cho Arduino được đề cập trong bài viết có thể được tải xuống từ ftp://ftp.radio.ru/pub/2016/08/diginout.zip.

Tác giả: D. Lekomtsev

Xem các bài viết khác razdela Đài thiết kế nghiệp dư.

Đọc và viết hữu ích bình luận về bài viết này.

<< Quay lại

Tin tức khoa học công nghệ, điện tử mới nhất:

Khai trương đài quan sát thiên văn cao nhất thế giới 04.05.2024

Khám phá không gian và những bí ẩn của nó là nhiệm vụ thu hút sự chú ý của các nhà thiên văn học từ khắp nơi trên thế giới. Trong bầu không khí trong lành của vùng núi cao, cách xa ô nhiễm ánh sáng thành phố, các ngôi sao và hành tinh tiết lộ bí mật của chúng một cách rõ ràng hơn. Một trang mới đang mở ra trong lịch sử thiên văn học với việc khai trương đài quan sát thiên văn cao nhất thế giới - Đài thiên văn Atacama của Đại học Tokyo. Đài quan sát Atacama nằm ở độ cao 5640 mét so với mực nước biển mở ra cơ hội mới cho các nhà thiên văn học trong việc nghiên cứu không gian. Địa điểm này đã trở thành vị trí cao nhất cho kính viễn vọng trên mặt đất, cung cấp cho các nhà nghiên cứu một công cụ độc đáo để nghiên cứu sóng hồng ngoại trong Vũ trụ. Mặc dù vị trí ở độ cao mang lại bầu trời trong xanh hơn và ít bị nhiễu từ khí quyển hơn, việc xây dựng đài quan sát trên núi cao đặt ra những khó khăn và thách thức to lớn. Tuy nhiên, bất chấp những khó khăn, đài quan sát mới mở ra triển vọng nghiên cứu rộng lớn cho các nhà thiên văn học. ... >>

Điều khiển vật thể bằng dòng không khí 04.05.2024

Sự phát triển của robot tiếp tục mở ra những triển vọng mới cho chúng ta trong lĩnh vực tự động hóa và điều khiển các vật thể khác nhau. Gần đây, các nhà khoa học Phần Lan đã trình bày một cách tiếp cận sáng tạo để điều khiển robot hình người bằng dòng không khí. Phương pháp này hứa hẹn sẽ cách mạng hóa cách thức thao tác các vật thể và mở ra những chân trời mới trong lĩnh vực robot. Ý tưởng điều khiển vật thể bằng dòng không khí không phải là mới, nhưng cho đến gần đây, việc thực hiện những khái niệm như vậy vẫn là một thách thức. Các nhà nghiên cứu Phần Lan đã phát triển một phương pháp cải tiến cho phép robot điều khiển vật thể bằng cách sử dụng các tia khí đặc biệt làm "ngón tay không khí". Thuật toán kiểm soát luồng không khí được phát triển bởi một nhóm chuyên gia dựa trên nghiên cứu kỹ lưỡng về chuyển động của các vật thể trong luồng không khí. Hệ thống điều khiển máy bay phản lực, được thực hiện bằng động cơ đặc biệt, cho phép bạn điều khiển các vật thể mà không cần dùng đến vật lý ... >>

Chó thuần chủng ít bị bệnh hơn chó thuần chủng 03.05.2024

Chăm sóc sức khỏe cho thú cưng của chúng ta là một khía cạnh quan trọng trong cuộc sống của mỗi người nuôi chó. Tuy nhiên, có một nhận định chung cho rằng chó thuần chủng dễ mắc bệnh hơn so với chó lai. Nghiên cứu mới do các nhà nghiên cứu tại Trường Khoa học Y sinh và Thú y Texas dẫn đầu mang lại góc nhìn mới cho câu hỏi này. Một nghiên cứu được thực hiện bởi Dự án lão hóa chó (DAP) trên hơn 27 con chó đồng hành cho thấy chó thuần chủng và chó lai thường có khả năng mắc các bệnh khác nhau như nhau. Mặc dù một số giống chó có thể dễ mắc một số bệnh nhất định nhưng tỷ lệ chẩn đoán tổng thể gần như giống nhau giữa cả hai nhóm. Bác sĩ thú y trưởng của Dự án Lão hóa Chó, Tiến sĩ Keith Creevy, lưu ý rằng có một số bệnh phổ biến phổ biến hơn ở một số giống chó nhất định, điều này ủng hộ quan điểm cho rằng chó thuần chủng dễ mắc bệnh hơn. ... >>

Tin tức ngẫu nhiên từ Kho lưu trữ

Áo khoác thông minh của Levi's 05.12.2018

Nhiều người có lẽ đã từng ít nhất một lần thấy mình rơi vào tình huống, khi vừa đến nơi làm việc hoặc ở một nơi khác, họ phát hiện ra rằng họ đã để quên điện thoại thông minh ở nhà. Để ngăn điều này xảy ra, nhà sản xuất quần áo Levi's, cùng với Google, đã giới thiệu một tính năng mới cho những chiếc áo khoác "thông minh" của thương hiệu, được tạo ra như một phần của dự án Jacquard. Nó có tên là Always Together, trong tiếng Anh có nghĩa là "Luôn bên nhau".

Chức năng Always Together là tự động và bao gồm đèn báo và rung mỗi khi cảm biến nằm trên áo khoác ở một khoảng cách nhất định so với điện thoại thông minh được gắn với nó. Một thông báo cũng được gửi đến điện thoại thông minh, vì vậy chủ sở hữu sẽ không cần phải mất thời gian tìm kiếm thiết bị xung quanh căn hộ hoặc bật chế độ Tìm điện thoại theo cách thủ công.

Sản phẩm đầu tiên do Jacquard thiết kế đã được bán vào tháng 2017 năm 350, tức là hơn một năm trước. Đây là Levi's Commuter Trucker Jacket, một chiếc áo khoác denim "thông minh" trị giá XNUMX đô la chủ yếu dành cho những người đi xe đạp. Nhờ các cảm biến vi mô được khâu vào vải, được phát triển bởi Dự án và Công nghệ tiên tiến của Google (ATAP), người dùng có thể điều khiển trình phát đa phương tiện hoặc ứng dụng điều hướng chẳng hạn. Dự án Jacquard tiếp tục được cải thiện và trong tương lai khả năng của nền tảng sẽ được mở rộng.

Tin tức thú vị khác:

▪ Tia laser sẽ đưa tên lửa ra khỏi mục tiêu

▪ Tầm nhìn ban đêm khả dụng cho tất cả mọi người

▪ Xe nhận dạng chính chủ bằng vân tay

▪ Tấm pin mặt trời cho FlixBus

▪ Trình điều khiển MOSFET kênh đơn Infineon 1EDN7511B và 1EDN8511B

Nguồn cấp tin tức khoa học và công nghệ, điện tử mới

 

Tài liệu thú vị của Thư viện kỹ thuật miễn phí:

▪ phần của trang web Tiểu sử của các nhà khoa học vĩ đại. Lựa chọn bài viết

▪ bài viết Quyền - không cho, quyền - nhận. biểu hiện phổ biến

▪ bài viết Kiến sống ở đâu mà đếm được số bước chân? đáp án chi tiết

▪ bài báo Núi lửa Popocatepetl. thiên nhiên kỳ diệu

▪ bài viết Đường viền cho ăng-ten HF. Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện

▪ bài viết Cải tiến máy thu dò. Bách khoa toàn thư về điện tử vô tuyến và kỹ thuật điện

Để lại bình luận của bạn về bài viết này:

Имя:


Email (tùy chọn):


bình luận:





Tất cả các ngôn ngữ của trang này

Trang chủ | Thư viện | bài viết | Sơ đồ trang web | Đánh giá trang web

www.diagram.com.ua

www.diagram.com.ua
2000-2024