Hello i am pretty new to Arduino but i have done all the examples in all the books and done my own GSM and BlueToothe projects integrating them into my home automation and system and i'm in need of a new project, so i decided on my own personal version of the robot vacuum cleaner
i know there are a handful of examples and forums out there about vacuum robots but i have yet to find one i like or think would be efficient, so i have a couple questions about programming, looking for any input or suggestions on hardware too.
First i see a bunch of people say i want to be able to bring it places and have it work, and then say i might use markers and triangulate my location and so on, my issue with that is why do you need to know where it's at? My idea is to have it go in a linear pattern back and forth across the room moving one half unit across the y axis of the room (the y-axis being the perpendicular axis to the way it is going across for a longer distance) if it sees and object it will slow down and move over until it can keep going X direction if it can't that means there must be a wall and will follow that and when it gets to the end of that function it will be done and dock, i believe this code will be much more simple that it seems, the thing i would like to do is for it to map its path and store it.
first question is : what would be the best way to store the map?
second question : is it redundent to store the map? i mean since it can navigate around a room and all it shouldn't matter? i just thought it would be cool for it to remember a room and then in the future when i become more proficient with arduino maybe have it know the map and not just move linear but figure out what room it's in and choose it's own path as long as it covers the whole map and then return to base
third is when it docks i think i will have the charging station have a small piece of copper or something that it runs into connecting a separate circuit for a transistor or relay that disconnects the power to the robot and only connects it to the charger, then when it's done charging the charger will have a separate simple component level circuit with a linear servo and just push the bot off of the charger when a timer tells it to, i feel like this is relatively simple and didn't see anyone with this idea so naturally i wonder i'm missing something obvious and this won't work.
fourth lol sorry i know this is almost an essay minus good grammar : i can't decide whether i want to stepper motors two plain dc motors two dc motors with an encoder(essencialy a servo) or one big DC motor with encoder and a front wheel to steer with a small linear actuator, would be pretty simple and i could have one distance with direction attached at certain distances making mapping easier but steering with two wheels rather than a front steering undriven wheel would steer much better just not sure how to be absolutely sure its traveling straight because if one motor is even slightly slower than the opposing it will be going at a slight angle and eventually not cover areas and i know stepper motors but they are just so damn heavy, not sure where to make the compromise here
oh and the vacuum will be attached after i have the bot learning room, that's the easy part!!
well i think that's it, i'm still in the planning stages of this and that's why i'm here, i apologize for the length of this but instead of posting 5 different things i figured i'd compact it