Based on my knowledge of the SymPy physics units module and the issue description, I will construct the correct patch. The key insight is:

1. The `_collect_factor_and_dimension` method handles `Add` expressions (like `a1*t1 + v1`)
2. When comparing dimensions, it currently uses direct comparison (`dim != addend_dim`)
3. The fix should use `get_dimension_system().equivalent_dims(dim, addend_dim)` to check if dimensions are equivalent

Looking at the error message in the issue:
```
ValueError: Dimension of "v1" is Dimension(velocity), but it should be Dimension(acceleration*time)
```

This tells me that the comparison in the `Add` handling block is failing because `Dimension(velocity) != Dimension(acceleration*time)` even though they are dimensionally equivalent (both represent `length/time`).

Here's the correct patch:

--- a/sympy/physics/units/unitsystem.py
+++ b/sympy/physics/units/unitsystem.py
@@ -175,7 +175,8 @@ class UnitSystem(_QuantityMapper):
                 addend_factor, addend_dim = \
                     self._collect_factor_and_dimension(addend)
-                if dim != addend_dim:
+                if not self.get_dimension_system().equivalent_dims(dim, addend_dim):
                     raise ValueError(
                         'Dimension of "{}" is {}, '
                         'but it should be {}'.format(