Thời gian cho những cái đầu tiên. Câu chuyện về cách chúng tôi triển khai Scratch như một ngôn ngữ lập trình robot

Nhìn vào sự đa dạng hiện nay của robot giáo dục, bạn rất vui khi trẻ em được tiếp cận với một số lượng lớn các bộ dụng cụ xây dựng, các sản phẩm làm sẵn và tiêu chuẩn “bắt đầu” vào những kiến ​​thức cơ bản về lập trình đã giảm xuống khá thấp (xuống mức mẫu giáo). ). Có một xu hướng rộng rãi là giới thiệu lập trình khối mô-đun trước tiên và sau đó chuyển sang các ngôn ngữ nâng cao hơn. Nhưng tình trạng này không phải lúc nào cũng đúng.

Thời gian cho những cái đầu tiên. Câu chuyện về cách chúng tôi triển khai Scratch như một ngôn ngữ lập trình robot

2009-2010. Nga đã bắt đầu làm quen với Arduino và Scratch trên diện rộng. Các thiết bị điện tử và lập trình giá cả phải chăng đang bắt đầu chinh phục tâm trí của cả những người đam mê và giáo viên, và ý tưởng kết nối tất cả những thứ này đã phát triển mạnh mẽ (và đã được triển khai một phần) trong không gian thông tin toàn cầu.

Trên thực tế, Scratch ở phiên bản 1.4 được phát hành vào thời điểm đó đã hỗ trợ thiết bị bên ngoài. Nó bao gồm hỗ trợ cho Lego WeDo (Khối động cơ) và Bảng PicoBoard.

Nhưng tôi muốn Arduino và robot dựa trên nó, tốt nhất là hoạt động trên phiên bản cơ bản. Đồng thời, một trong những kỹ sư Arduino người Nhật đã tìm ra cách kết hợp các nền tảng và đăng các sơ đồ (mặc dù không phải tất cả chúng đều phải được “nghĩ ra”) và phần sụn để công chúng truy cập (nhưng than ôi, thậm chí không phải bằng tiếng Anh). ). Lấy dự án này làm cơ sở, ScratchDuino ra đời vào năm 2010 (lúc đó tôi và vợ đang làm việc tại công ty Linux Center).

Khái niệm “hộp mực có thể thay thế” (gợi nhớ đến Micro:bit?), giá đỡ từ tính cho các bộ phận robot và sử dụng khả năng xử lý cảm biến và điều khiển động cơ tích hợp của Scratch.

Thời gian cho những cái đầu tiên. Câu chuyện về cách chúng tôi triển khai Scratch như một ngôn ngữ lập trình robot

Thời gian cho những cái đầu tiên. Câu chuyện về cách chúng tôi triển khai Scratch như một ngôn ngữ lập trình robot

Robot ban đầu được dự định tương thích với Lego:

Thời gian cho những cái đầu tiên. Câu chuyện về cách chúng tôi triển khai Scratch như một ngôn ngữ lập trình robot

Vào năm 2011, nền tảng này đã được phát hành và (sau khi vợ tôi và tôi rời dự án vào năm 2013), nó hiện đang tồn tại và phát triển dưới tên ROBBO.

Thời gian cho những cái đầu tiên. Câu chuyện về cách chúng tôi triển khai Scratch như một ngôn ngữ lập trình robot

Ai đó có thể tranh luận rằng đã có những dự án tương tự. Đúng, dự án S4A bắt đầu phát triển cùng thời điểm đó, nhưng chúng nhằm mục đích lập trình chính xác theo phong cách Arduino (với đầu ra kỹ thuật số và analog) từ Scratch đã được sửa đổi, trong khi quá trình phát triển của tôi có thể hoạt động với phiên bản “vanilla” (mặc dù chúng tôi cũng đã sửa đổi để hiển thị các khối dành riêng cho cảm biến từ 1 đến 4).

Sau đó, Scratch 2.0 xuất hiện và cùng với đó là các plugin cho cả Arduino và các robot phổ biến bắt đầu xuất hiện, và Scratch 3.0 ngay từ đầu đã hỗ trợ một số lượng lớn nền tảng robot.

Khối. Nếu bạn nhìn vào các robot phổ biến như MBot (nhân tiện, ban đầu cũng sử dụng Scratch đã được sửa đổi), chúng được lập trình bằng ngôn ngữ khối, nhưng đây không phải là Scratch mà là Blockly đã được sửa đổi từ Google. Tôi không biết liệu sự phát triển của nó có bị ảnh hưởng bởi sự phát triển của tôi hay không, nhưng tôi có thể chắc chắn rằng khi chúng tôi giới thiệu nền tảng Scratchduino cho các nhà phát triển Blockly ở London vào năm 2013, vẫn chưa có mùi robot ở đó.

Thời gian cho những cái đầu tiên. Câu chuyện về cách chúng tôi triển khai Scratch như một ngôn ngữ lập trình robot

Giờ đây, các sửa đổi của Blockly đã tạo thành nền tảng của nhiều nhà chế tạo rô-bốt và rô-bốt giáo dục, và đây lại là một câu chuyện khác, vì gần đây, một số lượng lớn các dự án đã xuất hiện (và cũng chìm vào quên lãng) ​​ở cả Nga và trên thế giới. Nhưng ở Liên bang Nga, chúng tôi là những người đầu tiên triển khai Scratch và “đối đầu” với Lego :)

Điều gì đã xảy ra sau năm 2013? Vào năm 2014, tôi và vợ thành lập dự án PROSTOROBOT (hay còn gọi là SIMPLEROBOT) và bắt đầu phát triển trò chơi board game. Nhưng Scratch sẽ không để chúng tôi đi.

Chúng tôi có những phát triển thú vị về mô hình robot trong Scratch và phiên bản Snap!
Tệp PDF có mô tả có thể được tải xuống và sử dụng miễn phí по ссылке, và các dự án đã hoàn thành tìm ở đây. Mọi thứ đều hoạt động trong phiên bản 3 của Scratch.

Chúng tôi cũng quay lại lập trình rô-bốt trong Scratch trong trò chơi giáo dục bảng mới “Trận chiến của Golems. Card League of Parobots" và chúng tôi sẽ rất vui nếu bạn sẽ hỗ trợ việc xuất bản nó trên Crowdrepublic.

Thời gian cho những cái đầu tiên. Câu chuyện về cách chúng tôi triển khai Scratch như một ngôn ngữ lập trình robot

Khi bạn đứng trước nguồn gốc của một thứ gì đó và “cảm nhận” các xu hướng trước khi chúng xuất hiện hàng loạt và bạn vui mừng vì mình là người đầu tiên và về cơ bản đã tạo ra thị trường và buồn vì mình không phải là người chiến thắng. Nhưng tôi có thể tự hào nói rằng sự kết hợp giữa Scratch và Arduino trong robot của Nga xuất hiện là nhờ nỗ lực của tôi.

Nguồn: www.habr.com

Thêm một lời nhận xét