Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. Be respectful, on topic and if you see a problem, Flag it.

If you would like to contact our Community Manager personally, feel free to send a private message or an email.

Tesla Autonomous Charger Help: Mate for rigid body motion in box

andrew_roleyandrew_roley Member Posts: 11 EDU
Hi, I will try to follow the "FORUM POST CHECKLIST"
  • Use the forum search tool:
I was able to find a similar question here, but the OP there didn't want motion, only precise positioning. However, his original question essentially matches mine: How do I mate a rigid body (box) on the inside of a box and allow 3 degrees of freedom (x, y, and yaw rotation)? The other degrees of freedom (z, pitch, roll) are effectively fixed by gravity.
  • Please be as descriptive as you can
I am modeling a car charging apparatus that attaches to a garage wall, and plugs itself into a Tesla Model 3. I want to model all the possible positions of the car within the garage to be able to use in context design/editing for the charging apparatus.

However, I can't find a mate that I can use to relate my garage walls to my car that doesn't either restrict motion that is possible in real life, or allow motion that's impossible in real life (e.g. going through the wall).

Currently working as desired: car's rear end does not hit garage walls, even at narrowest point (door opening), using x limit.
car does not hit back wall of garage (using y limit).
car can have varying degrees of rotation (using rotation limit), to model real life scenario of imperfectly aligned parking.


Not working as desired: yaw rotation plus x movement, while individually permissible, if combined, result in car's front end passing through garage walls.
yaw rotation plus y movement, while individually permissible, if combined, result in car passing through garage door supports.


I've thought about modeling each wall as a separate entity to achieve this, but it seems like I'd need a separate connector on each corner of the car to interface two per wall, which seems like it would be overdefined.

Additionally, I would like to show / allow motion of the car into and out of the garage, but I don't think it's necessary for design, just a "nice to have".
  • copy & paste the URL of a Public Document (V4 HERE)

I tried to share a specific version, as recommended in the checklist, but could not find an option for edit access for the public document, only copy, link document, and export rights.

Thanks in advance for any advice or help, regarding the mate connectors or otherwise!

Best Answers

  • AlexDAlexD Member Posts: 16 PRO
    Answer ✓
  • andrew_roleyandrew_roley Member Posts: 11 EDU
    Answer ✓
    ...

    You could easily have multiple splines and multiple cars in the same assembly. Each spline could be a different shape. Each car could be on its own spline.
    ...
    @steve_shubin

    I think this would be a great way to smoothly model the car's entry and exit on various paths.

    However, I think I found a simpler way using mates to meet my particular purpose (quickly and easily model extreme positions in garage). Your solution would definitely do a better job of modeling one approach of the car at a time while in motion, but that's not what I needed at this level of design.

    • Instead of trying to capture everything in one mate, I removed most of the limits from the existing "Car On Ground" and renamed it to BackLeft Corner. The only remaining limit was to make it no closer than 2 inches (X direction) to the garage doorway.
    • I then made similar mates for each corner. The front corners were offset from the side walls by a minimum of 10 inches (observed variability), and front wall by 8 inches (minimum summon distance to front bumper).
    • One of the key tricks was the order of selecting mate connectors, because it determined whether the X distance in question was from the car's reference frame or the garage's (found by accident when one side acted differently than the other). 
    • For the front corners, I wanted the garage's reference frame (car doesn't get closer than 10" from any point on the garage wall)
    • For the rear corners, I wanted the car's reference frame, as the car's side (any part) does not get any closer than 2" to the garage door frame.
    • Somewhat non-intuitively (I think), the second part you select determines the reference frame. 
    • Somewhat frustratingly, the "reorder items" button, although practically identical to the "flip primary axis" button, is not a single click action for a list of two items. 


Answers

  • steve_shubinsteve_shubin Member Posts: 1,066 ✭✭✭✭
    @andrew_roley

    You said you want to model all positions of the car within the garage.

    WATCH THE BELOW ANIMATION and see if this will work for you

    If you like what you see, notice that I changed the position of the mate to the center of the back of the car and adjusted the limits  accordingly —— see the screen capture at the very bottom




  • steve_shubinsteve_shubin Member Posts: 1,066 ✭✭✭✭
  • andrew_roleyandrew_roley Member Posts: 11 EDU
    @andrew_roley

    You said you want to model all positions of the car within the garage.

    WATCH THE BELOW ANIMATION and see if this will work for you

    If you like what you see, notice that I changed the position of the mate to the center of the back of the car and adjusted the limits  accordingly —— see the screen capture at the very bottom




    Hi Steve, thanks for offering this as a suggestion, the problem with this solution is that it overly restricts the angular motion. There is the possibility the car could enter very near the left side of the garage, and then angle sharply right. This would be about 7 deg before hitting the wall. In the above, there are 3 deg of motion that would be possible, but not captured.
  • steve_shubinsteve_shubin Member Posts: 1,066 ✭✭✭✭
    edited November 2019
    @andrew_roley

    I used the spline to make a curved shape

    I selected the curved line on the gray object to use with tangent points at the front and back of the car

    I also used planar mates to keep the car flat on the ground

    Using the spline, you can make whatever shape you want


  • tim_hess427tim_hess427 Member Posts: 648 ✭✭✭✭
    @andrew_roley - To provide a little clarity around your goals:

    1) Are you trying to find or measure the range of possible positions of the car within the garage? 

    OR

    2) Are you trying to model the car in any position within the garage? 

    If you are trying to do #1, then Onshape is definitely not the best tool. You'd probably have more success with some sort of motion modeling/kinematics tool that can detect part contact as you move things around. There are an infinite number of ways that a person can move a car into a garage, and your output would be a "space" that envelopes all of the possible locations and angles of the car. Onshape is just not designed for this type of analysis. 

    If you are trying to do #2, then you might able to just use a "planar" mate between the bottom of the car and the garage floor. Then, you'd have to manually move the car around to see where it would fit. You can manually check for interference, but again, it's all manual, here. 

    Based on the title of your post, it sounds like you need to know the possible locations of the car within the garage, so that you can properly design your charging system. In this case, I think doing the full analysis of #1 would be interesting, but not needed. You should be able to use method #2 to model several different locations and create an estimate of the locations your car could be. Add some safety factor and you should be good to go. 
  • andrew_roleyandrew_roley Member Posts: 11 EDU
    @andrew_roley - To provide a little clarity around your goals:

    1) Are you trying to find or measure the range of possible positions of the car within the garage? 

    OR

    2) Are you trying to model the car in any position within the garage? 
    @tim_hess427

    I was trying to use #2 to get an approximate of #1, as you referred to. I was hoping with OnShape that I could do better than "manually checking for interference". That was my whole reason for setting up all the mates in the assembly, but at least there's not *much* manual effort required among all the mates. I currently have the planar mate in use, but as mentioned, it doesn't do the job fully.
    @andrew_roley

    I used the spline to make a curved shape

    I selected the curved line on the gray object to use with tangent points at the front and back of the car

    I also used planar mates to keep the car flat on the ground

    Using the spline, you can make whatever shape you want


    @steve_shubin

    Thanks for showing this as an option. I think for modeling a single approach this would work amazing. Unfortunately I need to explore the possibilities for a full design solution, but at some point I think I'll return to using this spline suggestion for show and tell.
  • steve_shubinsteve_shubin Member Posts: 1,066 ✭✭✭✭
    @andrew_roley

    You could easily have multiple splines and multiple cars in the same assembly. Each spline could be a different shape. Each car could be on its own spline.

    So you could have one car pull into the garage using a certain approach, and then you could back that car out. You could have a 2nd car pull into the garage under a different approach, and then back that car out. You could do this numerous times, having five or six different cars — each car on its own spline and each spline a different shape, and each car a different color
  • AlexDAlexD Member Posts: 16 PRO
    Answer ✓
  • andrew_roleyandrew_roley Member Posts: 11 EDU
    Answer ✓
    ...

    You could easily have multiple splines and multiple cars in the same assembly. Each spline could be a different shape. Each car could be on its own spline.
    ...
    @steve_shubin

    I think this would be a great way to smoothly model the car's entry and exit on various paths.

    However, I think I found a simpler way using mates to meet my particular purpose (quickly and easily model extreme positions in garage). Your solution would definitely do a better job of modeling one approach of the car at a time while in motion, but that's not what I needed at this level of design.

    • Instead of trying to capture everything in one mate, I removed most of the limits from the existing "Car On Ground" and renamed it to BackLeft Corner. The only remaining limit was to make it no closer than 2 inches (X direction) to the garage doorway.
    • I then made similar mates for each corner. The front corners were offset from the side walls by a minimum of 10 inches (observed variability), and front wall by 8 inches (minimum summon distance to front bumper).
    • One of the key tricks was the order of selecting mate connectors, because it determined whether the X distance in question was from the car's reference frame or the garage's (found by accident when one side acted differently than the other). 
    • For the front corners, I wanted the garage's reference frame (car doesn't get closer than 10" from any point on the garage wall)
    • For the rear corners, I wanted the car's reference frame, as the car's side (any part) does not get any closer than 2" to the garage door frame.
    • Somewhat non-intuitively (I think), the second part you select determines the reference frame. 
    • Somewhat frustratingly, the "reorder items" button, although practically identical to the "flip primary axis" button, is not a single click action for a list of two items. 


  • andrew_roleyandrew_roley Member Posts: 11 EDU
    AlexD said:
    Thanks Alex, I missed your post while I was drafting my last one. This is precisely the simple implementation I was looking for. It looks like the parallel mates you used could be swapped with planar mates like my post, right? They aren't providing anything special to the solution, right?
Sign In or Register to comment.