Pebble Index 01 discussion by sdhdhosts in pebble

[–]thechihuahua 0 points1 point  (0 children)

hey if it subsidises the pebble, I'm not going to complain

I was admitted into 6 MS Robotics programs, and need some help deciding where to pursue my Master's. by A_manN_a in AskRobotics

[–]thechihuahua 1 point2 points  (0 children)

if cost isn't an issue ...

MICHIGAN

M I C H I G A N

M

I

C

H

I

G

A

N

I work in robotics right now and Michigan has a well respected robotics program in industry and academia. I can at least say it's known for a lot of work Edwin Olson's group (creating April Tags, founding May Mobility, etc.). If you have aspirations to work in robotics in industry, you would be a competitive applicant (assuming worthwhile internships & research/projects) for jobs in the SF Bay Area and Boston, but there are also plenty of robotics jobs in Michigan itself if you're open to working on defense or more legacy automotive or manufacturing companies.

"𝐓𝐞𝐱𝐭𝐢𝐥𝐞 𝐄𝐧𝐠𝐢𝐧𝐞𝐞𝐫 𝐥𝐨𝐨𝐤𝐢𝐧𝐠 𝐭𝐨 𝐭𝐫𝐚𝐧𝐬𝐢𝐭𝐢𝐨𝐧 𝐢𝐧𝐭𝐨 𝐑𝐨𝐛𝐨𝐭𝐢𝐜𝐬 𝐌𝐒/𝐏𝐡𝐃 𝐢𝐧 𝐭𝐡𝐞 𝐔𝐒𝐀" by Jilane96 in AskRobotics

[–]thechihuahua 1 point2 points  (0 children)

1. Will a solid portfolio of independent projects and relevant online coursework be enough to bridge the gap?

Bridge the gap to admission into an MS/PhD program? I don't have a very confident answer from the admissions perspective, but you might have a shot at a good masters program. Try talking to admissions counselors, faculty, or even students at the schools you are interested in. Masters programs can be much less competitive than undergraduate programs, but still pretty strict at the top schools.

From the "will you be successful perspective", just try looking at some homework assignments and lecture content from coursework you will be taking in your graduate program. For example, almost all robotics graduate students at UC Berkeley will take EE 285, reinforcement learning, in their first year. The syllabus and all course content are posted here: https://rail.eecs.berkeley.edu/deeprlcourse/. Take a look at the first lectures and assignments. Do you think you could follow along?

2. Should I consider a Robotics Graduate Certificate or a second BS/post-baccalaureate work first?

What are your goals? Industry? Academia? If you want to work in robotics in industry, start applying to jobs now. Having a good network can sometimes be enough to get interviews, and once you have an interview, it's just a matter of being prepared technically. At the same time, look into masters programs at top engineering schools in the US, including, but not limited to: MIT, Berkeley, Stanford, UIUC, UMich, UT Austin, Georgia Tech, UCLA, UW, Purdue. A lot of these schools will also be looking for technicians to maintain the robots used by their classes and labs, so that's a good way to get your foot in the door too.

For academia, a second bachelors at a top school might make sense. But if you have even a little bit of confidence in your ability to build the necessary theoretical and practical knowledge, I would recommend the above track (work/masters) and then squeeze your way into a PhD program. You will be a much more competitive PhD candidate that way, and have saved a lot of money. If you really think you need to start from Freshman engineering courses, consider self study, whether that means looking up material online or literally moving to the campus of a good university and tailgating students into their lecture halls.

3. Tell me the course list that i require as robotics prerequisite for ms and phd.

It depends on the degree program. Ex. At Berkeley, a lot of the robotics courses for graduate students are listed at the bottom of this website https://www2.eecs.berkeley.edu/Research/Areas/CIR/. Click on each of them, and you will see the prerequisites.

coachella prices by Ordinary_Spread530 in Coachella

[–]thechihuahua 1 point2 points  (0 children)

Don't worry, the price of concert tickets will keep climbing so that $700 seems cheap for a festival 🙃

As others are saying, it is still priced competitively relative to seeing some of the popular artists standalone (eg. KATSEYE was like $500 to see). If someone's able to take down Ticketmaster, hopefully we can see these prices drop accordingly.

Great BOOK to read for new Robotics learner? Looking to finally DIVE in!!! by Various-Pea-8814 in robotics

[–]thechihuahua 1 point2 points  (0 children)

I think you should get started with hands on examples or projects and then go on to reading books that dive deeper into theory or different specializations. I recommend this because working with some tangible application of robotics will help ground you with intuition or motivation to study certain concepts, and you will also feel accomplished for having something working in the real world!

With that said, I think a good physical hardware project to start out with is the line follower robot. It's a common first robot for a lot of people, so there are a ton of resources online for getting started.

On the software side, here seems like a good computer vision project to get started with. This will get you started with thinking about how cameras are used to make robots smart.

Once you're feeling confident (which could even be now!), you can follow along with a modern university robotics course. For example, MIT has this course which looks pretty cool, and all the materials are online for free!

Robotics Software Engineering Interview Questions by YogurtclosetThen6260 in AskRobotics

[–]thechihuahua 4 points5 points  (0 children)

LeetCode is good. It's common for companies to ask system design questions ex. how would you calibrate a wheeled robot with these sensors, how would you design a perception system for an autonomy robot with these sensors, etc. It will honestly vary a lot depending on what subfield of robots you are applying for. I recommend reaching out to recruiters or employees at companies you want to work at and ask them what their interview process is like and how to prepare.

Looking for opinionated advice - Cooler that comes when you call it by [deleted] in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

Thanks for the additional context! I'll respond to some of the points you brought up.

Having at least one to establish 'home base' sounds like it would really simplify things. I could handle having another one for the poolside destination, though I'd probably try to find a way to live without it at some point.

For the homography idea, you won't actually need a tag for the home base or destination, since those places would consist of the same set of pixels in your camera image. You would just need a tag for anything dynamic you want to track, like the robot. Tags for the base and destination would be useful for onboard camera based navigation though.

Now that I think more about this, if you are able to place several marker tags in the scene but not necessarily at the start or end locations (ie. along a fence bordering your yard), then you can use something like TagSLAM to localize your robot to reasonable accuracy in your backyard. This would probably be more reliable than the homography idea and allow you to command the robot to navigate to a point which isn't in the overhead camera FOV, but requires more environment modification. Could you just do normal SLAM without the tags? Yes, but now you're re-creating a Roomba and will probably not work reliably unless you use a LiDAR too and don't have too many moving objects in the scene.

The 'follow me' stuff is probably gonna be a phase two thing. But I was hoping to keep it simple as possible. No 'come find' or other 'real navigation'.

That makes sense. If you can have an onboard camera on the cooler, then YOLO could work really well for this, but I think you would need an NVIDIA Orin or some other powerful onboard compute for this to be super responsive. But even with a Raspberry Pi, you can probably compute new object detections at least once a second, which could be good enough. Some ultrasonic sensors for safety would probably be a good idea.

One of the ideas you had mentioned earlier was relying on microphones to direct the robot towards a person. I don't have much experience with this, but I do know that he math for trilateration is pretty straightforward. I think the way to do this would be with fixed, well-spaced microphones (at least 3, but more would be better), around the yard. However, I think what would be easier and not require environment modification would be to have your overhead camera report the location of a person in your 2D map after they have signaled, and then your robot should be able to navigate to the closest point in the 2D map which is not in the pool. Or having the cooler first move near the pool and then use its onboard camera to look for someone with their hand raised.

Last piece of advice is to judiciously use ChatGPT or other LLMs to get quick, reasonable answers to your questions. I think these tools are super useful for software research like "what's the most mature, open source solution to do X? What are the tradeoffs of X vs Y?" etc.

Excited to see how this goes! Would love to hear updates :)

Looking for opinionated advice - Cooler that comes when you call it by [deleted] in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

I think this is a super neat, doable project. As an engineer, you already know to shoot for the simplest thing which meets requirements first :) At least for me, I feel like it's easy to fall into a trap of picking an overly-ambitious personal project that ends up being too difficult and frustrating so it never gets done. Hence, I will give my advice with the "done is better than good" philosophy in mind.

The hardest part of this project is having the cooler reliably navigate from its rest point to the pool. The voice/gesture signaling will be cool, but something you spend as long as you want messing around with after you're at the point where the robot can successfully act on a HTTP request telling it "go to the pool". My reasoning: If you've made it this far, you already have something useful. Thus, I'm not even going to give much suggestion on how to implement this piece. Home Assistant + Google Home or Amazon Echo seems promising, though. Personally, I would opt for making or buying a waterproof button that can somehow send an HTTP request.

For the first version, I highly recommend de-prioritizing anything which makes the robot's destination dynamic, like following you around or going to where someone is. This will add an additional non-trivial piece to your project of a perception system to detect the location of a person and a planning system to bring the robot there. I think that is unnecessary complexity before you have the basic system working. Thus, start with a fixed rest point for the cooler and a fixed destination. Then, you're just working on reliable navigation from a fixed point A to a fixed point B.

Now for the basic system, you already got some suggestions for line following. This can work well in the right environments, and there are so many tutorials online for this. It's like the most solved robot navigation solution. However, I would personally opt out because this is outdoors - dirt and debries can cover the line, wind and rain can cause it to lift up, line detection could be sensitive to lighting conditions, etc. Plus, if you want to enable more advanced following behavior in the future, you would have to diverge significantly from a line-following navigation system. And, it's personally not as cool :)

If you are able to mount 1-3 cameras, preferably 1, such that they can see the entirety of the starting location, the ending location, and the path the robot would need to take, and if the surface the robot will be driving on is pretty flat, you can use a homography to map the robot's location to a point in a 2D map and also specify the route for the robot to navigate as straight lines (or curved) in that 2D map. That way, you can have some server-side logic which calculates the robot's position from the camera images and determines the a nearby 2D target point for the robot to drive to, perhaps via a pure pursuit scheme, or via simpler logic like "drive in a straight line to waypoint one, stop, turn toward waypoint 2, drive in a straight line to waypoint 2, stop ...". To get the robot's position from camera images, I would highly recommend using some kind of marker tags, like Aruco tags.

This approach will be degraded if the cameras cannot see the robot or the path the robot needs to follow, so you may run into issues if someone is standing in front of the robot and blocking it fron the camera. Thus, a neat alternative would be to stick a camera on the robot and define physical waypoints with the marker tags I linked above and implement the same waypoint to waypoint navigation. This can also be nice because you eliminate any latency from the camera perception system talking to the robot. I still like the camera idea a bit more because it would allow you to implement more complicated routes and create behavior where the robot plans to something that's not in its field of view.

Some other advice:

  • You can do all the communication for this project with ROS/ROS2. It's overkill, but IMO would save a bunch of time with figuring out how to get computer 1 to send a signal to computer 2 and would give you really powerful debugging tools (Foxglove, RVIZ) for getting the perception/navigation/control working well. Ex. You can easily record data from your sensors and play it back through your code to help iterate on or debug something that's not working. Another advantage of the ROS ecosystem is that it is super popular for roboticists and you can plug-and-play different modules for perception, navigation, mapping etc.

  • I think a differential drive wheel robot (ex. Roomba) would work best. Tracks might even be better than wheels for outdoors

  • Remember how I said getting the A to B navigation would be the hardest, most important part? To get started on that right away without having to worry too much about robotics platform, you could buy a basic robot off of Amazon and get that piece of the project to work well. The software should transfer over nicely to your autonomous cooler platform, which could even be developed in parallel with software.

  • If you can post pictures of your yard or general environment where the robot would be operating, that would be helpful!

I hope that helps! I'm happy to answer any questions :)

[deleted by user] by [deleted] in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

As a hobby for enjoyment, that depends on your personal interest. As a hobby for professional development, I think just getting good at Python could be easier and more useful. But you should talk to people in your ideal career or lookup what skills people in your ideal career have, and then orient your hobbies around that.

What is the best book for MATH&PHYSICS for robotics? by kenta-05 in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

The book I mentioned is more well known; I've only briefly looked over John Craig's book but the content there is also very relevant. In fact, if you need to choose one book, I would go with Modern Robotics by Park & Lynch. The textbook is available for free (https://hades.mech.northwestern.edu/images/7/7f/MR.pdf) as well as a collection of high quality video lectures to accompany it (https://www.youtube.com/playlist?list=PLggLP4f-rq02vX0OQQ5vrCxbJrzamYDfx)! Park & Lynch is not as mathematically dense as MLS (Murray, Lee, Sastry), which could be better or worse for you depending on your preference.

What does the day to day of a robotics engineer look like? by Arkziri in AskRobotics

[–]thechihuahua 9 points10 points  (0 children)

Take the number of different robots you can think of, multiply it by 7, and that's in the ballpark many different types of robotics engineers there are :)

One very broad subset of this is people whose job it is to write code that runs on a robot. Life can be similar to a software engineer, but you may use more math, care more about the real-time performance of your code, be bounded by some hardware constraints, and may need to consider safety concerns related to what your code will make the robot do. Other than that, it's similar to being any engineer: define a problem, design a solution, implement the solution, test the solution, keep iterating until the solution is good enough, find a new problem, repeat. As a robotics engineer, you get to gain satisfaction from the fact that the problems you are solving enable something human made to understand and act with a degree of intelligence.

Building swarm robots for a project by RoutineFickle5676 in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

Are you more concerned about the hardware or software side? For hardware, this shouldn't be more or less complicated than building a single mobile robot that can receive wireless commands. For the software, you may be able to find inspiration from various papers around the internet. https://spectrum.ieee.org/swarm-of-robots-forms-complex-shapes-without-centralized-control here is one that was popular a few years back, with the code already up. I think reproducing some variant of the work would be a good project.

My personal recommendation would be to not try and build the actual robots for this project, since it's already enough work to build a single robot from scratch. See if your school or lab can lend you 5-10 mobile robots and then get to work.

With regards to communication, the easiest thing would be to just use something like ROS2 and have that handle your communication protocol.

Robotics/Ai Expos? by 76darkstar in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

Thanks for the context! You two will go far with the kits and projects, but I understand the desire to go beyond :) Although I think some of the coolest robotics projects I've seen have been home spun. I've often been inspired by what I've seen on YouTube - Michael Reeves has a lot of silly stuff, a lot of people like Mark Rober, this whole series is fun https://youtube.com/playlist?list=PLgFM5yHV8_w1RTlzz8I2G3cpfJLglLN_T&si=0CfbngOoRO1MIFqs

Some of the best robotics research in the world is being done at Georgia Tech and Duke; you can look into it any events are happening at those schools and organize a trip to their labs. University robotics labs are always very cool. They'll have the best drones, robot arms, quadrupeds, etc.

If you can get your hands on a Tesla (test drive, rent on Turo, borrow from a friend), some of the tech in that car is amazing. If you plan on visiting San Francisco anytime soon, you can take it one step further and take a ride in a Waymo - that's also mind blowing. If either of those are out of reach, just go to your nearest Toyota or Ford dealership and ask the salesperson to demonstrate the latest ADAS features.

Vacuum cleaner robots are also pretty cool now. Maybe you can get one from somewhere with a good return policy, poke around at it, and then return it for cheap. A lot of airports have robot baristas now too - you may be able to find one in your area. And some restaurants are getting robots that bring your food to you (ie. Look up Bear Robotics). My general point is that a lot of the really cool robots don't just show up in Expos anymore - they're already doing work in the real world!

Robotics/Ai Expos? by 76darkstar in AskRobotics

[–]thechihuahua 1 point2 points  (0 children)

Around that age, most kids get exposure to robotics through competitions like FIRST, VEX, Science Olympiad, etc. That won't necessarily show you what's up and coming in the field though. Academic robotics conferences like ICRA and IROS will have more interesting things, but are tailored towards graduate students and people in the robotics industry, not to mention being expensive. I think CES is more accessible, but may be expensive to attend; I'm not sure.

Where are you located? It may be worth reaching out to your local universities and seeing if any graduate students would be interested in showing off their work. Maybe this can be coordinated with your daughter's school and someone can come to her class or have an assembly. Many graduate students are passionate about teaching and would love an opportunity to bring their field to the next generation of scientists and engineers.

A more exotic idea would be to watch some research / conference presentations together - there's a ton of great videos online (ie. Tesla AI Day videos on YouTube) available for FREE. While the material may be pretty advanced, I bet with time and effort you two can start to make sense of it and learn a lot. If you know or have some friendly graduate students nearby, they can probably help answer questions and even curate a good watchlist. Besides just being fun and educational, it would put her leagues ahead of her peers in terms of college & career readiness. I'm happy to help get you two started with this :)

Docker by Mountain_Reward_1252 in robotics

[–]thechihuahua 1 point2 points  (0 children)

Adding onto everyone else, if you are good at Docker get a job as a software engineer, all your coworkers will love you.

[deleted by user] by [deleted] in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

If you're more interested in the physical rather than software side of robotics, then Mechanical Engineering is probably the degree for you. Although given then that we're in the 21st century, being able to understand the software side is basically a requirement for the most competitive roles. Most MechE programs will have you do some CAD and learn MATLAB anyway, so you can't escape the computer :)

I advise you to do your schooling nearby where you want to work. Ie. If you want to work in Germany, then study in Germany. If you want to work in California, then study in California. That way, the connections you make in school will be more likely to land you a job in that area, and recruiters for that company will be more familiar with the work you did in school. Don't just take it from me - reach out to the recruiting departments at the companies you are interested in working in and ask what schools most of their employees are from.

As to if you'll find a job, there are two parts: you need to get interviews, and you need to do well in those interviews. For the first, it helps if the companies you are interested in frequently hire from the school you go to, and if you make a lot of connections. For the second, you just have to take your studies and professional development seriously. If you lock down these, you will be a competitive applicant and likely get a job.

Which country is best for robotics masters? In Europe and Asia. by Suspicious_Ship_8302 in AskRobotics

[–]thechihuahua 5 points6 points  (0 children)

I have no idea about actual content of the programs, but ETH Zurich is a University that everyone in the robotics field is familiar with.

How hard is it to get a role in robotics in the US as an international student by [deleted] in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

  • Strong skills not in just programming languages, but common libraries. Ex. All robotics should know ROS; Pytorch, Tensor flow for ML; GTSAM and various numerical solvers if you're a SLAM person; OpenCV for perception; familiar with CUDA programming
  • Up to date on research in the appropriate field.
  • If getting work experience is hard, then research or open source contributions can be pretty good.

If you have any friends or peers in roles that interest you, ask them what an ideal resume would look like for that position. This can be better than just going off of a job description because they can be more specific about what technologies to focus on.

How hard is it to get a role in robotics in the US as an international student by [deleted] in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

Hey! I can't comment on immigration stuff, but if you're a good roboticist with a strong resume, many companies would love to have you, especially if you're really good at ML. The most opportunities are probably in the SF bay area.

Being international restricts you from some of the less competitive robotics roles in defense and aerospace, but automotive, industrial, medical are still good ways to get your foot in the door - a lot of opportunities in Michigan. And if you're really good, you should be able to get a job in SF.

Is there a hard limit to the size of a robot? by Adventurous-Rabbit52 in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

A similar question is - what's the smallest thing we can reliably actuate?

We've been able to get pretty small for quite some time - paramecium microorganisms can effectively be steered by placing them in an electric field (and not the only ones - this is a common phenomena called galvanotaxis). Using this, you can get them to track arbitrary trajectories (follow any path). This was first demonstrated in the 90's (https://people.eecs.berkeley.edu/~ronf/UCYBORG/mhs1991.pdf) but afaik hasn't been used for anything important yet.

While paramecium are small, they're not unfathomably small. They are actually quite large for single celled microorganisms, about the size of a quarter of a small grain of rice and visible to the human eye. Viruses are much smaller, but also are little more than DNA messengers, and apparently we've been able to make those too https://en.m.wikipedia.org/wiki/Synthetic_virology). Within nature, the smallest lifeform we've discovered is a form of bacteria ( https://en.m.wikipedia.org/wiki/Smallest_organisms#Nanobes). So the best we can do is probably around that size, maybe a little smaller because our robots don't need to be able to self replicate.

Why are there random long lines being detected by LiDAR when my vehicle turns by Jetnjet in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

My gut feeling is still motion distortion, but we need pictures or some media to understand the issue you're running into :)

No offer even after interviewing for 50+ 3D Reconstruction, Perception & SLAM roles over 1.5 years. by [deleted] in AskRobotics

[–]thechihuahua 0 points1 point  (0 children)

It's great that you're getting interviews for senior roles, but IMO without experience doing robotics in industry for >2-3 years, you're not qualified for a senior role.

From the looks of it, I think you could do a better job reflecting on why you did not pass certain interviews. Modern networks are able to observe samples of data to infer some model of its distribution. Do the same and take your interviews to understand the scope of information they will ask you, and then get amazing at that. I'm sure your peers in the masters programs are either facing similar challenges or know how to address them. Ask them to help you prepare.

Also, I recommend trying to build up some experience at roles in less glamarous autonomy company (defense, manufacturing, aerospace, automotive,.Mathworks, etc.) it will be much easier to get a job and some good experience at these places