webots_bitirme's Introduction
webots_bitirme's People
Forkers
erensaskinwebots_bitirme's Issues
bölgenin taranması
Bir robotun aldığı location limit arasındaki upper ve lower limitlerin arasındaki bölgeyi taraması.
0-90 derece arası fix.
Aşamalar
Taranan alan tutuluyor. Hepsine sync ediliyor.
Hangi robotun hangi alanı tarayacağı ayrı bir yapıda tutuluyor. (ilerde belki şifreleme eklenir. Her türlü işlem loglanır. taradı/tarıyor/tarayacak.)
Robot1 scanning Area15.
Ortak bir hashmap. keyler bölge kodları (ya da hashli location limit), valueleri hangi robot olduğu. örnek: {'area15':'robot2'}
- Her robot kendi başına bölme yapacak. Bu bölmeler birbirinin aynısı olacak. Bunun için başlangıç noktasının ve offsetin aynı seçilmesi yeterli.
- Ortak taranacak alanların tutultuğu yer atomic olmalı. Aynı anda işlem yapamamalılar. Aynı anda 2 robot tek bir bölgeyi üzerine alamalalı.
Her robot alınmayan bir bölgeyi alacağını bildirip taramaya gider.
LocLimit fielda taşınacak.
Supervisor konum bilgilerini emitter ile robotlara gönderecek
Robotların konumlarının Z değerlerinden en küçük olanı belirlenip başlangıç noktası olarak alınacak.
Robotlar bu noktaya göre alanlarını belirleyecek.
Belirlenen başlangıç noktalarına robotlar gidecek.
robotların birbirine çarpmaması
robotların çarpmaları bir şekilde engellenecek.
alanın ileriye doğru açılması
Yeni alan açma algoritması. Alanlar ileriye doğru 3lü 3lü açılacak.
Döneceği yönü optimize etme
Döneceği yönü optimize edilecek. Örneğin 340 dereceye dönüyorsa ve bulunduğu derece 320 ise 40 derecede tamamlamalı. Uzak olan açıdan gelmemeli.
Bölge paylaşma ve tarama
Her robotun receiver ve emitteri olacak.
Receiverın mesafesi varsa o verilir: Yoksa oraya bir robotların birbirine yakın olup olmadığına dair geliştirme yapılacak. true false döndüren bir fonk.
Hepsi kapsama alanında olmalı bu sayede hiçbir haritada aynı yer taranmaması sağlanır.
Taranacak alanın bildirilmesi
Herkes tarayacağı alanı bildirmesi gerekiyor.
- Şu alanı tarayacağım diye diğer tüm robotlara istek atabilir ve herkesten onay dönünce başlar.
mayın bulması
Rastgele supervisor ile mayın oluştur. Bulduğumuz mayınları send_message içerisinde yeni bir tip oluşturarak diğer robotlara gönder. konumlarıyla mayınları ve kimin bulduğunu kaydet..
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.